{{/* ============================================================================= Common helpers ============================================================================= */}} {{- define "c-----code.fullname" -}} {{- .Release.Name -}} {{- end -}} {{- define "c-----code.namespace" -}} {{- .Values.namespace | default .Release.Namespace -}} {{- end -}} {{- define "c-----code.image" -}} {{- $registry := .Values.image.registry -}} {{- $pullPolicy := .Values.image.pullPolicy -}} {{- printf "%s/%s:%s" $registry .image.repository .image.tag -}} {{- end -}} {{/* Inject image pull policy into sub-chart image dict */}} {{- define "c-----code.mergeImage" -}} {{- $merged := dict "pullPolicy" $.Values.image.pullPolicy -}} {{- $merged = merge $merged .image -}} {{- printf "%s/%s:%s" $.Values.image.registry $merged.repository $merged.tag -}} {{- end -}} {{/* Build a key-value env var list, optionally reading from a Secret */}} {{- define "c-----code.envFromSecret" -}} {{- $secretName := .existingSecret -}} {{- $keys := .secretKeys -}} {{- $result := list -}} {{- range $envName, $secretKey := $keys -}} {{- $item := dict "name" $envName "valueFrom" (dict "secretKeyRef" (dict "name" $secretName "key" $secretKey)) -}} {{- $result = append $result $item -}} {{- end -}} {{- $result | toJson | fromJson -}} {{- end -}} {{/* Merge two env lists (extra env over auto-injected) */}} {{- define "c-----code.mergeEnv" -}} {{- $auto := .auto -}} {{- $extra := .extra | default list -}} {{- $merged := append $auto $extra | toJson | fromJson -}} {{- $merged | toYaml -}} {{- end -}}