{{/* Labels comunes a todos los recursos del chart. Sigue convenciones CLAUDE.md global + IDP (idp.coralware.cloud/*). */}} {{- define "app.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 }} app.kubernetes.io/part-of: {{ .Chart.Name }} idp.coralware.cloud/tier: {{ .Values.tier | quote }} idp.coralware.cloud/tenant-id: {{ .Values.tenantId | quote }} idp.coralware.cloud/golden-path: {{ .Values.goldenPath }} idp.coralware.cloud/golden-path-lang: {{ .Values.goldenPathLang }} {{- end }} {{/* Selector labels — subset estable de app.labels usado en Deployment.spec.selector y Service.spec.selector. NO debe incluir labels que cambien (version, tier). */}} {{- define "app.selectorLabels" -}} app.kubernetes.io/name: {{ .Chart.Name }} app.kubernetes.io/instance: {{ .Release.Name }} {{- end }} {{/* Checksum del Secret de la BD — fuerza rollout cuando rota el secret. */}} {{- define "app.dbSecretChecksum" -}} {{- $secret := lookup "v1" "Secret" .Release.Namespace .Values.database.secretName }} {{- if $secret }}{{ toYaml $secret.data | sha256sum }}{{ else }}absent{{ end }} {{- end }}