Skip to content

Commit 4beeafc

Browse files
committed
improve ingress anotation handling
1 parent dadf215 commit 4beeafc

File tree

3 files changed

+24
-10
lines changed

3 files changed

+24
-10
lines changed

hosting/k8s/helm/templates/_helpers.tpl

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -234,3 +234,21 @@ Generate docker config for image pull secret
234234
{{- end }}
235235
{{- end }}
236236

237+
{{/*
238+
Merge ingress annotations to avoid duplicates
239+
*/}}
240+
{{- define "trigger-v4.ingress.annotations" -}}
241+
{{- $annotations := dict -}}
242+
{{- if .Values.ingress.annotations -}}
243+
{{- $annotations = .Values.ingress.annotations -}}
244+
{{- end -}}
245+
{{- if .Values.ingress.certManager.enabled -}}
246+
{{- $_ := set $annotations "cert-manager.io/cluster-issuer" .Values.ingress.certManager.clusterIssuer -}}
247+
{{- end -}}
248+
{{- if .Values.ingress.externalDns.enabled -}}
249+
{{- $_ := set $annotations "external-dns.alpha.kubernetes.io/hostname" .Values.ingress.externalDns.hostname -}}
250+
{{- $_ := set $annotations "external-dns.alpha.kubernetes.io/ttl" (.Values.ingress.externalDns.ttl | toString) -}}
251+
{{- end -}}
252+
{{- toYaml $annotations -}}
253+
{{- end }}
254+

hosting/k8s/helm/templates/ingress.yaml

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8,16 +8,7 @@ metadata:
88
labels:
99
{{- include "trigger-v4.labels" . | nindent 4 }}
1010
annotations:
11-
{{- with .Values.ingress.annotations }}
12-
{{- toYaml . | nindent 4 }}
13-
{{- end }}
14-
{{- if .Values.ingress.certManager.enabled }}
15-
cert-manager.io/cluster-issuer: {{ .Values.ingress.certManager.clusterIssuer | quote }}
16-
{{- end }}
17-
{{- if .Values.ingress.externalDns.enabled }}
18-
external-dns.alpha.kubernetes.io/hostname: {{ .Values.ingress.externalDns.hostname | quote }}
19-
external-dns.alpha.kubernetes.io/ttl: {{ .Values.ingress.externalDns.ttl | quote }}
20-
{{- end }}
11+
{{- include "trigger-v4.ingress.annotations" . | nindent 4 }}
2112
spec:
2213
{{- if .Values.ingress.className }}
2314
ingressClassName: {{ .Values.ingress.className }}

hosting/k8s/helm/values.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -548,6 +548,11 @@ persistence:
548548
ingress:
549549
enabled: false
550550
className: "traefik"
551+
# Custom annotations for the ingress resource
552+
# Note: The following annotation keys are reserved and will be automatically set:
553+
# - cert-manager.io/cluster-issuer (when certManager.enabled is true)
554+
# - external-dns.alpha.kubernetes.io/hostname (when externalDns.enabled is true)
555+
# - external-dns.alpha.kubernetes.io/ttl (when externalDns.enabled is true)
551556
annotations: {}
552557
certManager:
553558
enabled: false

0 commit comments

Comments
 (0)