99 lines
2.9 KiB
Smarty
99 lines
2.9 KiB
Smarty
{{/* vim: set filetype=mustache: */}}
|
|
|
|
{{/*
|
|
Nom de l'app = nom du release Helm.
|
|
Pattern DGBF : tout est nommé pareil (Deployment, Service, Ingress, ConfigMap…).
|
|
*/}}
|
|
{{- define "lions-app.name" -}}
|
|
{{- .Release.Name | trunc 63 | trimSuffix "-" -}}
|
|
{{- end -}}
|
|
|
|
{{/*
|
|
Chart fullname = name + chart version (pour helm.sh/chart label).
|
|
*/}}
|
|
{{- define "lions-app.chart" -}}
|
|
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
|
|
{{- end -}}
|
|
|
|
{{/*
|
|
Common labels — appliqués sur TOUTES les ressources.
|
|
Conformes aux recommendations Kubernetes (app.kubernetes.io/*).
|
|
*/}}
|
|
{{- define "lions-app.labels" -}}
|
|
app.kubernetes.io/name: {{ include "lions-app.name" . }}
|
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
|
app.kubernetes.io/part-of: lions-infrastructure
|
|
helm.sh/chart: {{ include "lions-app.chart" . }}
|
|
project: lions-infrastructure-2025
|
|
{{- with .Values.commonLabels }}
|
|
{{ toYaml . }}
|
|
{{- end }}
|
|
{{- end -}}
|
|
|
|
{{/*
|
|
Selector labels — stables (ne changent jamais), utilisés par Service et Deployment.
|
|
"app" est gardé pour compatibilité avec les legacy deployments Lions.
|
|
*/}}
|
|
{{- define "lions-app.selectorLabels" -}}
|
|
app: {{ include "lions-app.name" . }}
|
|
app.kubernetes.io/name: {{ include "lions-app.name" . }}
|
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
{{- end -}}
|
|
|
|
{{/*
|
|
Image reference complète : registry/repo/name:tag
|
|
*/}}
|
|
{{- define "lions-app.image" -}}
|
|
{{- $registry := .Values.image.registry | default "registry.lions.dev" -}}
|
|
{{- $repo := .Values.image.repository | default "lionsdev" -}}
|
|
{{- $name := .Values.image.name | default (include "lions-app.name" .) -}}
|
|
{{- $tag := .Values.image.tag | default .Chart.AppVersion -}}
|
|
{{- printf "%s/%s/%s:%s" $registry $repo $name $tag -}}
|
|
{{- end -}}
|
|
|
|
{{/*
|
|
Nom du ServiceAccount.
|
|
*/}}
|
|
{{- define "lions-app.serviceAccountName" -}}
|
|
{{- if .Values.serviceAccount.create -}}
|
|
{{- .Values.serviceAccount.name | default (include "lions-app.name" .) -}}
|
|
{{- else -}}
|
|
{{- .Values.serviceAccount.name | default "default" -}}
|
|
{{- end -}}
|
|
{{- end -}}
|
|
|
|
{{/*
|
|
Nom du K8s Secret cible de l'ExternalSecret.
|
|
*/}}
|
|
{{- define "lions-app.secretName" -}}
|
|
{{- include "lions-app.name" . -}}-secrets
|
|
{{- end -}}
|
|
|
|
{{/*
|
|
Nom du TLS secret de l'Ingress.
|
|
*/}}
|
|
{{- define "lions-app.tlsSecretName" -}}
|
|
{{- include "lions-app.name" . -}}-tls
|
|
{{- end -}}
|
|
|
|
{{/*
|
|
Path de l'Ingress selon le mode (simple ou prefix-strip).
|
|
*/}}
|
|
{{- define "lions-app.ingressPath" -}}
|
|
{{- if .Values.ingress.pathPrefix.enabled -}}
|
|
{{- printf "%s(/|$)(.*)" .Values.ingress.pathPrefix.strip -}}
|
|
{{- else -}}
|
|
{{- .Values.ingress.path | default "/" -}}
|
|
{{- end -}}
|
|
{{- end -}}
|
|
|
|
{{- define "lions-app.ingressPathType" -}}
|
|
{{- if .Values.ingress.pathPrefix.enabled -}}
|
|
ImplementationSpecific
|
|
{{- else -}}
|
|
{{- .Values.ingress.pathType | default "Prefix" -}}
|
|
{{- end -}}
|
|
{{- end -}}
|