Refactor code-server templates: Add secret, headless-service, scripts, persistantvolumeclaim, configmap, certificate, and service templates
This commit is contained in:
@@ -0,0 +1,204 @@
|
||||
image:
|
||||
# -- The repository to pull the image from.
|
||||
repository: ghcr.io/coder/code-server
|
||||
# -- The docker tag, if left empty chart's appVersion will be used.
|
||||
# @default -- `.Chart.AppVersion`
|
||||
tag: ''
|
||||
# -- The pull policy for the controller.
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
nameOverride: ''
|
||||
fullnameOverride: ''
|
||||
|
||||
controller:
|
||||
# -- Create a workload for this chart.
|
||||
enabled: true
|
||||
# -- Type of the workload object.
|
||||
kind: Deployment
|
||||
# -- The number of replicas.
|
||||
replicas: 1
|
||||
# -- Additional annotations for the controller object.
|
||||
annotations: {}
|
||||
# -- Additional labels for the controller object.
|
||||
labels: {}
|
||||
|
||||
service:
|
||||
# -- Create a service for exposing this chart.
|
||||
enabled: true
|
||||
# -- The service type used.
|
||||
type: ClusterIP
|
||||
# -- Additional annotations for the service object.
|
||||
annotations: {}
|
||||
# -- Additional labels for the service object.
|
||||
labels: {}
|
||||
|
||||
ingressRoute:
|
||||
# -- Create an IngressRoute object for exposing this chart.
|
||||
create: true
|
||||
# -- List of [entry points](https://doc.traefik.io/traefik/routing/routers/#entrypoints) on which the ingress route will be available.
|
||||
entryPoints:
|
||||
- websecure
|
||||
# -- [Matching rule](https://doc.traefik.io/traefik/routing/routers/#rule) for the underlying router.
|
||||
rule: 'Host(`coder.traefik.local`)'
|
||||
# -- List of [middleware objects](https://doc.traefik.io/traefik/routing/providers/kubernetes-crd/#kind-middleware) for the ingress route.
|
||||
middlewares: []
|
||||
# -- Use an existing secret containing the TLS certificate.
|
||||
tlsSecretName: 'coder.taefik.local'
|
||||
# -- Additional annotations for the ingress route object.
|
||||
annotations: {}
|
||||
# -- Additional labels for the ingress route object.
|
||||
labels: {}
|
||||
|
||||
certificate:
|
||||
# -- Create an Certificate object for the exposed chart.
|
||||
create: true
|
||||
# -- List of subject alternative names for the certificate.
|
||||
dnsNames:
|
||||
- 'coder.taefik.local'
|
||||
# -- Name of the secret in which the certificate will be stored. Defaults to the first item in dnsNames.
|
||||
secretName: 'coder.taefik.local'
|
||||
issuerRef:
|
||||
# -- Type of the referenced certificate issuer. Can be "Issuer" or "ClusterIssuer".
|
||||
kind: ClusterIssuer
|
||||
# -- Name of the referenced certificate issuer.
|
||||
name: 'selfsigned'
|
||||
# -- Additional annotations for the certificate object.
|
||||
annotations: {}
|
||||
# -- Additional labels for the certificate object.
|
||||
labels: {}
|
||||
|
||||
env:
|
||||
# -- Timezone for the container.
|
||||
- name: TZ
|
||||
value: UTC
|
||||
|
||||
# -- List of extra arguments for the container.
|
||||
extraArgs: []
|
||||
# - --disable-telemetry
|
||||
|
||||
ports:
|
||||
http:
|
||||
# -- Enable the port inside the `controller` and `Service` objects.
|
||||
enabled: true
|
||||
# -- The port used as internal port and cluster-wide port if `.service.type` == `ClusterIP`.
|
||||
port: 8080
|
||||
# -- The external port used if `.service.type` == `NodePort`.
|
||||
nodePort: null
|
||||
# -- The protocol used for the service.
|
||||
protocol: TCP
|
||||
|
||||
configMap:
|
||||
# -- Create a new config map object.
|
||||
create: true
|
||||
# -- Mount path of the config map object.
|
||||
mountPath: /etc/code-server
|
||||
# -- Use an existing config map object.
|
||||
existingConfigMap: ''
|
||||
# -- Map containing the [configuration of code-server](https://coder.com/docs/code-server/latest/guide).
|
||||
config: {}
|
||||
# -- Additional annotations for the config map object.
|
||||
annotations: {}
|
||||
# -- Additional labels for the config map object.
|
||||
labels: {}
|
||||
|
||||
secret:
|
||||
# -- Create a new secret containing the password.
|
||||
create: true
|
||||
# -- Use an existing secret to store the password.
|
||||
existingSecret: ''
|
||||
# -- Password used when not using an existing secret.
|
||||
password: 'pass123'
|
||||
# -- Additional annotations for the secret object.
|
||||
annotations: {}
|
||||
# -- Additional labels for the secret object.
|
||||
labels: {}
|
||||
|
||||
persistentVolumeClaim:
|
||||
# -- Create a new persistent volume claim object.
|
||||
create: true
|
||||
# -- Mount path of the persistent volume claim object.
|
||||
mountPath: /home/coder
|
||||
# -- Access mode of the persistent volume claim object.
|
||||
accessMode: ReadWriteOnce
|
||||
# -- Volume mode of the persistent volume claim object.
|
||||
volumeMode: Filesystem
|
||||
# -- Storage request size for the persistent volume claim object.
|
||||
size: 1Gi
|
||||
# -- Storage class name for the persistent volume claim object.
|
||||
storageClassName: ''
|
||||
# -- Project folder inside the persistent volume claim object.
|
||||
projectsPath: /home/coder/projects
|
||||
# -- Manage permissions automatically.
|
||||
ensurePermissions: true
|
||||
# -- Use an existing persistent volume claim object.
|
||||
existingPersistentVolumeClaim: ''
|
||||
# -- Additional annotations for the persistent volume claim object.
|
||||
annotations: {}
|
||||
# -- Additional labels for the persistent volume claim object.
|
||||
labels: {}
|
||||
|
||||
# -- List of repositories to be cloned / updated automatically.
|
||||
repositories: []
|
||||
# - url: https://github.com/pascaliske/helm-charts
|
||||
# name: helm-charts
|
||||
|
||||
cronJob:
|
||||
# -- Create a cron job to auto update repositories.
|
||||
enabled: true
|
||||
# -- Update schedule for the cron job.
|
||||
schedule: '0 */4 * * *'
|
||||
# -- Enable/disable the cron job schedule quickly.
|
||||
suspend: false
|
||||
# -- The number of successful finished jobs to retain.
|
||||
successfulJobsHistoryLimit: 3
|
||||
# -- The number of failed finished jobs to retain.
|
||||
failedJobsHistoryLimit: 1
|
||||
# -- Additional annotations for the cronjob object.
|
||||
annotations: {}
|
||||
# -- Additional labels for the cronjob object.
|
||||
labels: {}
|
||||
|
||||
serviceAccount:
|
||||
# -- Specify the service account used for the controller.
|
||||
name: ''
|
||||
|
||||
# -- Pod-level security attributes. More info [here](https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#security-context).
|
||||
securityContext:
|
||||
fsGroup: 1000
|
||||
runAsNonRoot: true
|
||||
runAsGroup: 1000
|
||||
runAsUser: 1000
|
||||
|
||||
# -- Pod-level dns config. More info [here](https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#hostname-and-name-resolution).
|
||||
dnsConfig: {}
|
||||
# nameservers: []
|
||||
# searches: []
|
||||
# options:
|
||||
# - name: ''
|
||||
# value: ''
|
||||
|
||||
# -- Compute resources used by the container. More info [here](https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/).
|
||||
resources: {}
|
||||
# limits:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
# requests:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
|
||||
# -- Pod-level affinity. More info [here](https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#scheduling).
|
||||
affinity: {}
|
||||
# nodeAffinity:
|
||||
# requiredDuringSchedulingIgnoredDuringExecution:
|
||||
# nodeSelectorTerms:
|
||||
# - matchExpressions:
|
||||
# - key: kubernetes.io/hostname
|
||||
# operator: In
|
||||
# values:
|
||||
# - my-node-xyz
|
||||
|
||||
# -- Pod-level tolerations. More info [here](https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#scheduling).
|
||||
tolerations: []
|
||||
# - key: node-role.kubernetes.io/control-plane
|
||||
# operator: Exists
|
||||
# effect: NoSchedule
|
||||
Reference in New Issue
Block a user