57 lines
2.2 KiB
Smarty
57 lines
2.2 KiB
Smarty
{{/*
|
|
Template to render VPN addon
|
|
It will include / inject the required templates based on the given values.
|
|
*/}}
|
|
{{- define "tc.v1.common.addon.tailscale" -}}
|
|
{{- $ts := $.Values.addons.tailscale -}}
|
|
{{- if $ts.enabled -}}
|
|
{{- $secContext := dict -}}
|
|
{{- $_ := set $secContext "runAsUser" 0 -}}
|
|
{{- $_ := set $secContext "runAsGroup" 0 -}}
|
|
{{- $_ := set $secContext "runAsNonRoot" true -}}
|
|
{{- $_ := set $secContext "readOnlyRootFilesystem" false -}}
|
|
|
|
{{- if and $ts.container.env ($ts.container.env.TS_USERSPACE) -}}
|
|
{{- $_ := set $secContext "runAsUser" 1000 -}}
|
|
{{- $_ := set $secContext "runAsGroup" 1000 -}}
|
|
{{- $_ := set $secContext "runAsNonRoot" false -}}
|
|
{{- $_ := set $secContext "readOnlyRootFilesystem" true -}}
|
|
{{- end -}}
|
|
|
|
{{- $newSecContext := $ts.container.securityContext -}}
|
|
{{- $newSecContext = mustMergeOverwrite $newSecContext $secContext -}}
|
|
{{- $_ := set $ts.container "securityContext" $newSecContext -}}
|
|
|
|
{{- $targetSelector := list "main" -}}
|
|
{{- if $ts.targetSelector -}}
|
|
{{- $targetSelector = $ts.targetSelector -}}
|
|
{{- end -}}
|
|
|
|
{{/* Append the vpn container to the workloads */}}
|
|
{{- range $targetSelector -}}
|
|
{{/* FIXME: https://github.com/tailscale/tailscale/issues/8188 */}}
|
|
{{- $workload := get $.Values.workload . -}}
|
|
{{- $_ := set $workload.podSpec "automountServiceAccountToken" true -}}
|
|
{{- $_ := set $workload.podSpec.containers "tailscale" $ts.container -}}
|
|
{{- end -}}
|
|
|
|
{{- $persistence := $.Values.persistence.tailscalestate | default dict -}}
|
|
{{- $_ := set $persistence "enabled" true -}}
|
|
{{- if not $persistence.type -}}
|
|
{{- $_ := set $persistence "type" "emptyDir" -}}
|
|
{{- end -}}
|
|
{{- if not $persistence.targetSelector -}}
|
|
{{- $_ := set $persistence "targetSelector" dict -}}
|
|
{{- end -}}
|
|
|
|
{{- $selectorValue := (dict "tailscale" (dict "mountPath" "/var/lib/tailscale")) -}}
|
|
{{- range $targetSelector -}}
|
|
{{- $_ := set $persistence.targetSelector . $selectorValue -}}
|
|
{{- end -}}
|
|
|
|
{{/* Append the empty dir tailscale to the persistence */}}
|
|
{{- $_ := set $.Values.persistence "tailscalestate" $persistence -}}
|
|
{{- end -}}
|
|
|
|
{{- end -}}
|