{{/* Common labels */}} {{- define "switchboard.labels" -}} app.kubernetes.io/name: {{ .Chart.Name }} app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} app.kubernetes.io/managed-by: {{ .Release.Service }} helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }} {{- end }} {{/* Backend selector labels */}} {{- define "switchboard.backend.labels" -}} app.kubernetes.io/component: backend {{ include "switchboard.labels" . }} {{- end }} {{/* Frontend selector labels */}} {{- define "switchboard.frontend.labels" -}} app.kubernetes.io/component: frontend {{ include "switchboard.labels" . }} {{- end }} {{/* Secret name */}} {{- define "switchboard.secretName" -}} {{- if .Values.existingSecret -}} {{ .Values.existingSecret }} {{- else -}} {{ .Release.Name }}-secrets {{- end -}} {{- end }} {{/* Backend image */}} {{- define "switchboard.backend.image" -}} {{ .Values.backend.image.repository }}:{{ .Values.backend.image.tag | default .Chart.AppVersion }} {{- end }} {{/* Frontend image */}} {{- define "switchboard.frontend.image" -}} {{ .Values.frontend.image.repository }}:{{ .Values.frontend.image.tag | default .Chart.AppVersion }} {{- end }} {{/* Database URL — assembled from postgres.* if url is empty */}} {{- define "switchboard.databaseURL" -}} {{- if .Values.database.url -}} {{ .Values.database.url }} {{- else if eq .Values.database.driver "sqlite" -}} {{ .Values.database.sqlitePath }} {{- else -}} postgres://{{ .Values.database.postgres.user }}:$(POSTGRES_PASSWORD)@{{ .Values.database.postgres.host }}:{{ .Values.database.postgres.port }}/{{ .Values.database.postgres.database }}?sslmode={{ .Values.database.postgres.sslmode }} {{- end -}} {{- end }}