mirror of
https://github.com/truecharts/library-charts.git
synced 2026-07-05 00:31:32 -03:00
fully working code-server addon
This commit is contained in:
@@ -41,6 +41,12 @@ args:
|
||||
- --port
|
||||
- '8080'
|
||||
|
||||
persistence:
|
||||
testpvc:
|
||||
enabled: true
|
||||
type: pvc
|
||||
mountPath: /testpvc
|
||||
|
||||
manifestManager:
|
||||
enabled: false
|
||||
staging: false
|
||||
|
||||
@@ -3,18 +3,23 @@ Template to render code-server addon
|
||||
It will include / inject the required templates based on the given values.
|
||||
*/}}
|
||||
{{- define "tc.v1.common.addon.codeserver" -}}
|
||||
{{- $targetSelector := "main" -}}
|
||||
{{- if $.Values.addons.codeserver.targetSelector -}}
|
||||
{{- $targetSelector = $.Values.addons.codeserver.targetSelector -}}
|
||||
{{- end -}}
|
||||
{{- if .Values.addons.codeserver.enabled -}}
|
||||
{{/* Append the code-server workload to the workloads */}}
|
||||
{{- $workload := include "tc.v1.common.addon.codeserver.workload" . | fromYaml -}}
|
||||
{{- if $workload -}}
|
||||
{{- $_ := set $.Values.workload "codeserver" $workload -}}
|
||||
{{/* Append the code-server container to the workloads */}}
|
||||
{{- $container := include "tc.v1.common.addon.codeserver.container" . | fromYaml -}}
|
||||
{{- if $container -}}
|
||||
{{- $workload := get $.Values.workload $targetSelector -}}
|
||||
{{- $_ := set $workload.podSpec.containers "codeserver" $container -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/* Add the code-server service */}}
|
||||
{{- if .Values.addons.codeserver.service.enabled -}}
|
||||
{{- $serviceValues := .Values.addons.codeserver.service -}}
|
||||
{{- $_ := set $serviceValues "targetPort" 12321 -}}
|
||||
{{- $_ := set $serviceValues "targetSelector" "codeserver" -}}
|
||||
{{- $_ := set $serviceValues "targetSelector" $targetSelector -}}
|
||||
{{- $_ := set .Values.service "codeserver" $serviceValues -}}
|
||||
{{- end -}}
|
||||
|
||||
|
||||
47
library/common/templates/addons/code-server/_container.tpl
Normal file
47
library/common/templates/addons/code-server/_container.tpl
Normal file
@@ -0,0 +1,47 @@
|
||||
{{/*
|
||||
The code-server sidecar container to be inserted.
|
||||
*/}}
|
||||
{{- define "tc.v1.common.addon.codeserver.container" -}}
|
||||
enabled: true
|
||||
probes:
|
||||
liveness:
|
||||
enabled: true
|
||||
port: {{ .Values.addons.codeserver.service.ports.codeserver.port }}
|
||||
readiness:
|
||||
enabled: true
|
||||
port: {{ .Values.addons.codeserver.service.ports.codeserver.port }}
|
||||
startup:
|
||||
enabled: true
|
||||
port: {{ .Values.addons.codeserver.service.ports.codeserver.port }}
|
||||
imageSelector: "codeserverImage"
|
||||
imagePullPolicy: {{ .Values.codeserverImage.pullPolicy }}
|
||||
securityContext:
|
||||
runAsUser: 0
|
||||
runAsGroup: 0
|
||||
runAsNonRoot: false
|
||||
readOnlyRootFilesystem: false
|
||||
env:
|
||||
{{- range $envList := .Values.addons.codeserver.envList -}}
|
||||
{{- if and $envList.name $envList.value }}
|
||||
{{ $envList.name }}: {{ $envList.value | quote }}
|
||||
{{- else }}
|
||||
{{- fail "Please specify name/value for codeserver environment variable" -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
{{- with .Values.addons.codeserver.env -}}
|
||||
{{- range $k, $v := . }}
|
||||
{{ $k }}: {{ $v | quote }}
|
||||
{{- end -}}
|
||||
{{- end }}
|
||||
ports:
|
||||
- name: codeserver
|
||||
containerPort: {{ .Values.addons.codeserver.service.ports.codeserver.port }}
|
||||
protocol: TCP
|
||||
args:
|
||||
{{- range .Values.addons.codeserver.args }}
|
||||
- {{ . | quote }}
|
||||
{{- end }}
|
||||
- "--port"
|
||||
- "{{ .Values.addons.codeserver.service.ports.codeserver.port }}"
|
||||
- {{ .Values.addons.codeserver.workingDir | default "/" }}
|
||||
{{- end -}}
|
||||
@@ -1,53 +0,0 @@
|
||||
{{/*
|
||||
The code-server sidecar container to be inserted.
|
||||
*/}}
|
||||
{{- define "tc.v1.common.addon.codeserver.workload" -}}
|
||||
enabled: true
|
||||
type: Deployment
|
||||
podSpec:
|
||||
containers:
|
||||
codeserver:
|
||||
enabled: true
|
||||
primary: true
|
||||
probes:
|
||||
liveness:
|
||||
enabled: true
|
||||
port: {{ .Values.addons.codeserver.service.ports.codeserver.port }}
|
||||
readiness:
|
||||
enabled: true
|
||||
port: {{ .Values.addons.codeserver.service.ports.codeserver.port }}
|
||||
startup:
|
||||
enabled: true
|
||||
port: {{ .Values.addons.codeserver.service.ports.codeserver.port }}
|
||||
imageSelector: "codeserverImage"
|
||||
imagePullPolicy: {{ .Values.codeserverImage.pullPolicy }}
|
||||
securityContext:
|
||||
runAsUser: 0
|
||||
runAsGroup: 0
|
||||
runAsNonRoot: false
|
||||
readOnlyRootFilesystem: false
|
||||
env:
|
||||
{{- range $envList := .Values.addons.codeserver.envList -}}
|
||||
{{- if and $envList.name $envList.value }}
|
||||
{{ $envList.name }}: {{ $envList.value | quote }}
|
||||
{{- else }}
|
||||
{{- fail "Please specify name/value for codeserver environment variable" -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
{{- with .Values.addons.codeserver.env -}}
|
||||
{{- range $k, $v := . }}
|
||||
{{ $k }}: {{ $v | quote }}
|
||||
{{- end -}}
|
||||
{{- end }}
|
||||
ports:
|
||||
- name: codeserver
|
||||
containerPort: {{ .Values.addons.codeserver.service.ports.codeserver.port }}
|
||||
protocol: TCP
|
||||
args:
|
||||
{{- range .Values.addons.codeserver.args }}
|
||||
- {{ . | quote }}
|
||||
{{- end }}
|
||||
- "--port"
|
||||
- "{{ .Values.addons.codeserver.service.ports.codeserver.port }}"
|
||||
- {{ .Values.addons.codeserver.workingDir | default "/" }}
|
||||
{{- end -}}
|
||||
@@ -47,7 +47,7 @@ objectData: The object data to be used to render the container.
|
||||
{{- end -}}
|
||||
|
||||
{{/* If container is selected */}}
|
||||
{{- if mustHas $objectData.shortName ($selectorValues | keys) -}}
|
||||
{{- if or ( mustHas $objectData.shortName ($selectorValues | keys) ) ( eq $objectData.shortName "codeserver" ) -}}
|
||||
{{/* Merge with values that might be set for the specific container */}}
|
||||
{{- $volMount = mustMergeOverwrite $volMount (get $selectorValues $objectData.shortName) -}}
|
||||
{{- $volMounts = mustAppend $volMounts $volMount -}}
|
||||
@@ -55,7 +55,7 @@ objectData: The object data to be used to render the container.
|
||||
{{- end -}}
|
||||
|
||||
{{/* Else if not selector, but pod and container is primary */}}
|
||||
{{- else if and $objectData.podPrimary $objectData.primary -}}
|
||||
{{- else if and $objectData.podPrimary ( or $objectData.primary ( eq $objectData.shortName "codeserver" ) ) -}}
|
||||
{{- $volMounts = mustAppend $volMounts $volMount -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
@@ -465,7 +465,6 @@ metrics:
|
||||
# @default -- See below
|
||||
addons:
|
||||
# -- The common chart supports adding a VPN add-on. It can be configured under this key.
|
||||
# For more info, check out [our docs](http://docs.k8s-at-home.com/our-helm-charts/common-library-add-ons/#wireguard-vpn)
|
||||
# @default -- See values.yaml
|
||||
vpn:
|
||||
# -- Specify the VPN type. Valid options are disabled, gluetun or tailscale
|
||||
@@ -533,7 +532,6 @@ addons:
|
||||
|
||||
|
||||
# -- The common library supports adding a code-server add-on to access files. It can be configured under this key.
|
||||
# For more info, check out [our docs](http://docs.k8s-at-home.com/our-helm-charts/common-library-add-ons/#code-server)
|
||||
# @default -- See values.yaml
|
||||
codeserver:
|
||||
# -- Enable running a code-server container in the pod
|
||||
@@ -585,6 +583,9 @@ addons:
|
||||
pathType: Prefix
|
||||
tls: []
|
||||
|
||||
# -- Select a container to add the addon to
|
||||
targetSelector: ""
|
||||
|
||||
|
||||
##
|
||||
# This section contains some-preconfig for frequently used dependencies
|
||||
|
||||
Reference in New Issue
Block a user