From 305b04b0f47ce9e70e88b5164813dab83c1aeb4e Mon Sep 17 00:00:00 2001 From: euannliutgc Date: Wed, 20 Aug 2025 12:01:03 -0700 Subject: [PATCH 1/3] first draft adding global annotations --- helm/charts/nats/README.md | 3 +++ helm/charts/nats/files/config-map.yaml | 2 ++ helm/charts/nats/files/headless-service.yaml | 2 ++ helm/charts/nats/files/ingress.yaml | 2 ++ helm/charts/nats/files/nats-box/contents-secret.yaml | 2 ++ .../files/nats-box/contexts-secret/contexts-secret.yaml | 2 ++ .../nats/files/nats-box/deployment/deployment.yaml | 2 ++ .../nats/files/nats-box/deployment/pod-template.yaml | 2 ++ helm/charts/nats/files/nats-box/service-account.yaml | 2 ++ helm/charts/nats/files/pod-disruption-budget.yaml | 2 ++ helm/charts/nats/files/pod-monitor.yaml | 2 ++ helm/charts/nats/files/service-account.yaml | 2 ++ helm/charts/nats/files/service.yaml | 2 ++ helm/charts/nats/files/stateful-set/pod-template.yaml | 1 + helm/charts/nats/files/stateful-set/stateful-set.yaml | 2 ++ helm/charts/nats/templates/_helpers.tpl | 9 +++++++++ helm/charts/nats/test/config_test.go | 6 ++++++ helm/charts/nats/values.yaml | 5 +++++ 18 files changed, 50 insertions(+) diff --git a/helm/charts/nats/README.md b/helm/charts/nats/README.md index 0096a1bb..8366edcc 100644 --- a/helm/charts/nats/README.md +++ b/helm/charts/nats/README.md @@ -330,6 +330,9 @@ extraResources: labels: $tplYaml: | {{ include "nats.labels" $ }} + annotations: + $tplYaml: | + {{ include "nats.annotations" $ }} spec: hosts: - demo.nats.io diff --git a/helm/charts/nats/files/config-map.yaml b/helm/charts/nats/files/config-map.yaml index 89ee3c28..0c4eaf59 100644 --- a/helm/charts/nats/files/config-map.yaml +++ b/helm/charts/nats/files/config-map.yaml @@ -5,6 +5,8 @@ metadata: name: {{ .Values.configMap.name }} labels: {{- include "nats.labels" $ | nindent 4 }} + annotations: + {{- include "nats.annotations" $ | nindent 4 }} data: nats.conf: | {{- include "nats.formatConfig" .config | nindent 4 }} diff --git a/helm/charts/nats/files/headless-service.yaml b/helm/charts/nats/files/headless-service.yaml index da6552b3..24efa98f 100644 --- a/helm/charts/nats/files/headless-service.yaml +++ b/helm/charts/nats/files/headless-service.yaml @@ -5,6 +5,8 @@ metadata: name: {{ .Values.headlessService.name }} labels: {{- include "nats.labels" $ | nindent 4 }} + annotations: + {{- include "nats.annotations" $ | nindent 4 }} spec: selector: {{- include "nats.selectorLabels" $ | nindent 4 }} diff --git a/helm/charts/nats/files/ingress.yaml b/helm/charts/nats/files/ingress.yaml index b59f0fa5..df63458c 100644 --- a/helm/charts/nats/files/ingress.yaml +++ b/helm/charts/nats/files/ingress.yaml @@ -6,6 +6,8 @@ metadata: name: {{ .name }} labels: {{- include "nats.labels" $ | nindent 4 }} + annotations: + {{- include "nats.annotations" $ | nindent 4 }} spec: {{- with .className }} ingressClassName: {{ . | quote }} diff --git a/helm/charts/nats/files/nats-box/contents-secret.yaml b/helm/charts/nats/files/nats-box/contents-secret.yaml index 6e8fdb26..98de8893 100644 --- a/helm/charts/nats/files/nats-box/contents-secret.yaml +++ b/helm/charts/nats/files/nats-box/contents-secret.yaml @@ -5,6 +5,8 @@ metadata: name: {{ .Values.natsBox.contentsSecret.name }} labels: {{- include "natsBox.labels" $ | nindent 4 }} + annotations: + {{- include "nats.annotations" $ | nindent 4 }} type: Opaque stringData: {{- range $ctxKey, $ctxVal := .Values.natsBox.contexts }} diff --git a/helm/charts/nats/files/nats-box/contexts-secret/contexts-secret.yaml b/helm/charts/nats/files/nats-box/contexts-secret/contexts-secret.yaml index 0ce8d1d8..f7cda01e 100644 --- a/helm/charts/nats/files/nats-box/contexts-secret/contexts-secret.yaml +++ b/helm/charts/nats/files/nats-box/contexts-secret/contexts-secret.yaml @@ -5,6 +5,8 @@ metadata: name: {{ .Values.natsBox.contextsSecret.name }} labels: {{- include "natsBox.labels" $ | nindent 4 }} + annotations: + {{- include "nats.annotations" $ | nindent 4 }} type: Opaque stringData: {{- range $ctxKey, $ctxVal := .Values.natsBox.contexts }} diff --git a/helm/charts/nats/files/nats-box/deployment/deployment.yaml b/helm/charts/nats/files/nats-box/deployment/deployment.yaml index bf39dd8d..9efd9aa6 100644 --- a/helm/charts/nats/files/nats-box/deployment/deployment.yaml +++ b/helm/charts/nats/files/nats-box/deployment/deployment.yaml @@ -5,6 +5,8 @@ metadata: name: {{ .Values.natsBox.deployment.name }} labels: {{- include "natsBox.labels" $ | nindent 4 }} + annotations: + {{- include "nats.annotations" $ | nindent 4 }} spec: selector: matchLabels: diff --git a/helm/charts/nats/files/nats-box/deployment/pod-template.yaml b/helm/charts/nats/files/nats-box/deployment/pod-template.yaml index 71056bfb..6b4ef6c8 100644 --- a/helm/charts/nats/files/nats-box/deployment/pod-template.yaml +++ b/helm/charts/nats/files/nats-box/deployment/pod-template.yaml @@ -1,6 +1,8 @@ metadata: labels: {{- include "natsBox.labels" $ | nindent 4 }} + annotations: + {{- include "nats.annotations" $ | nindent 4 }} spec: containers: {{- with .Values.natsBox.container }} diff --git a/helm/charts/nats/files/nats-box/service-account.yaml b/helm/charts/nats/files/nats-box/service-account.yaml index c31e52f1..efc84181 100644 --- a/helm/charts/nats/files/nats-box/service-account.yaml +++ b/helm/charts/nats/files/nats-box/service-account.yaml @@ -5,3 +5,5 @@ metadata: name: {{ .Values.natsBox.serviceAccount.name }} labels: {{- include "natsBox.labels" $ | nindent 4 }} + annotations: + {{- include "nats.annotations" $ | nindent 4 }} diff --git a/helm/charts/nats/files/pod-disruption-budget.yaml b/helm/charts/nats/files/pod-disruption-budget.yaml index fd1fdead..488cac01 100644 --- a/helm/charts/nats/files/pod-disruption-budget.yaml +++ b/helm/charts/nats/files/pod-disruption-budget.yaml @@ -5,6 +5,8 @@ metadata: name: {{ .Values.podDisruptionBudget.name }} labels: {{- include "nats.labels" $ | nindent 4 }} + annotations: + {{- include "nats.annotations" $ | nindent 4 }} spec: maxUnavailable: 1 selector: diff --git a/helm/charts/nats/files/pod-monitor.yaml b/helm/charts/nats/files/pod-monitor.yaml index c6c8eae0..8e80620e 100644 --- a/helm/charts/nats/files/pod-monitor.yaml +++ b/helm/charts/nats/files/pod-monitor.yaml @@ -5,6 +5,8 @@ metadata: name: {{ .Values.promExporter.podMonitor.name }} labels: {{- include "nats.labels" $ | nindent 4 }} + annotations: + {{- include "nats.annotations" $ | nindent 4 }} spec: selector: matchLabels: diff --git a/helm/charts/nats/files/service-account.yaml b/helm/charts/nats/files/service-account.yaml index 22c18cc7..28d6fd50 100644 --- a/helm/charts/nats/files/service-account.yaml +++ b/helm/charts/nats/files/service-account.yaml @@ -5,3 +5,5 @@ metadata: name: {{ .Values.serviceAccount.name }} labels: {{- include "nats.labels" $ | nindent 4 }} + annotations: + {{- include "nats.annotations" $ | nindent 4 }} diff --git a/helm/charts/nats/files/service.yaml b/helm/charts/nats/files/service.yaml index db08fe5b..01d8025e 100644 --- a/helm/charts/nats/files/service.yaml +++ b/helm/charts/nats/files/service.yaml @@ -5,6 +5,8 @@ metadata: name: {{ .Values.service.name }} labels: {{- include "nats.labels" $ | nindent 4 }} + annotations: + {{- include "nats.annotations" $ | nindent 4 }} spec: selector: {{- include "nats.selectorLabels" $ | nindent 4 }} diff --git a/helm/charts/nats/files/stateful-set/pod-template.yaml b/helm/charts/nats/files/stateful-set/pod-template.yaml index 9832ba34..59860ed0 100644 --- a/helm/charts/nats/files/stateful-set/pod-template.yaml +++ b/helm/charts/nats/files/stateful-set/pod-template.yaml @@ -2,6 +2,7 @@ metadata: labels: {{- include "nats.labels" $ | nindent 4 }} annotations: + {{- include "nats.annotations" $ | nindent 4 }} {{- if .Values.podTemplate.configChecksumAnnotation }} {{- $configMap := include "nats.loadMergePatch" (merge (dict "file" "config-map.yaml" "ctx" $) $.Values.configMap) }} checksum/config: {{ sha256sum $configMap }} diff --git a/helm/charts/nats/files/stateful-set/stateful-set.yaml b/helm/charts/nats/files/stateful-set/stateful-set.yaml index cd8082cb..7fb470e2 100644 --- a/helm/charts/nats/files/stateful-set/stateful-set.yaml +++ b/helm/charts/nats/files/stateful-set/stateful-set.yaml @@ -5,6 +5,8 @@ metadata: name: {{ .Values.statefulSet.name }} labels: {{- include "nats.labels" $ | nindent 4 }} + annotations: + {{- include "nats.annotations" $ | nindent 4 }} spec: selector: matchLabels: diff --git a/helm/charts/nats/templates/_helpers.tpl b/helm/charts/nats/templates/_helpers.tpl index 689e07eb..d7264422 100644 --- a/helm/charts/nats/templates/_helpers.tpl +++ b/helm/charts/nats/templates/_helpers.tpl @@ -143,6 +143,15 @@ app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/component: nats-box {{- end }} +{{/* +NATS annotations +*/}} +{{- define "nats.annotations" -}} +{{- with .Values.global.annotations -}} +{{ toYaml . }} +{{- end }} +{{- end }} + {{/* Print the image */}} diff --git a/helm/charts/nats/test/config_test.go b/helm/charts/nats/test/config_test.go index cac92419..c55c8690 100644 --- a/helm/charts/nats/test/config_test.go +++ b/helm/charts/nats/test/config_test.go @@ -633,6 +633,9 @@ extraResources: labels: $tplYaml: | {{ include "nats.labels" $ }} + annotations: + $tplYaml: | + {{ include "nats.annotations" $ }} spec: selector: labels: @@ -651,6 +654,9 @@ extraResources: name: {{ include "nats.fullname" $ }}-extra labels: {{- include "nats.labels" $ | nindent 4 }} + annotations: + $tplYaml: | + {{ include "nats.annotations" $ }} data: foo: bar ` diff --git a/helm/charts/nats/values.yaml b/helm/charts/nats/values.yaml index c79d361b..066b0f13 100644 --- a/helm/charts/nats/values.yaml +++ b/helm/charts/nats/values.yaml @@ -16,6 +16,8 @@ global: # global labels will be applied to all resources deployed by the chart labels: {} + annotations: + foo: bar ################################################################################ # Common options @@ -656,6 +658,9 @@ natsBox: # labels: # $tplYaml: | # {{ include "nats.labels" $ }} +# annotations: +# $tplYaml: | +# {{ include "nats.annotations" $ }} # spec: # hosts: # - demo.nats.io From a977d48fadee572ef0e7d131de6f88786f4acdae Mon Sep 17 00:00:00 2001 From: euannliutgc Date: Wed, 20 Aug 2025 12:05:21 -0700 Subject: [PATCH 2/3] set default values for annotations to empty --- helm/charts/nats/values.yaml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/helm/charts/nats/values.yaml b/helm/charts/nats/values.yaml index 066b0f13..8ed45e22 100644 --- a/helm/charts/nats/values.yaml +++ b/helm/charts/nats/values.yaml @@ -16,8 +16,7 @@ global: # global labels will be applied to all resources deployed by the chart labels: {} - annotations: - foo: bar + annotations: {} ################################################################################ # Common options From 7a5736ea1ba65aec9b1cc7cc352ad6f39455f108 Mon Sep 17 00:00:00 2001 From: Braden Wright Date: Wed, 20 Aug 2025 14:15:05 -0500 Subject: [PATCH 3/3] bumped nats chart version --- helm/charts/nats/Chart.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/helm/charts/nats/Chart.yaml b/helm/charts/nats/Chart.yaml index 11d03b95..5b92b1eb 100644 --- a/helm/charts/nats/Chart.yaml +++ b/helm/charts/nats/Chart.yaml @@ -6,7 +6,7 @@ keywords: - nats - messaging - cncf -version: 1.3.10 +version: 1.3.10-tgc0 home: http://github.com/nats-io/k8s maintainers: - email: info@nats.io