From a45d241163a376af719631b0ab264bd8aa7869e1 Mon Sep 17 00:00:00 2001 From: leehosu Date: Tue, 24 Sep 2024 16:29:16 +0900 Subject: [PATCH] Refactor Helm template to properly handle ApplicationSet namespaces splitting and quoting. Signed-off-by: leehosu --- .../clusterrolebinding.yaml | 11 ++++++----- charts/argo-cd/values.yaml | 4 ++-- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/charts/argo-cd/templates/argocd-application-controller/clusterrolebinding.yaml b/charts/argo-cd/templates/argocd-application-controller/clusterrolebinding.yaml index 00a260b0..1a2b96cb 100644 --- a/charts/argo-cd/templates/argocd-application-controller/clusterrolebinding.yaml +++ b/charts/argo-cd/templates/argocd-application-controller/clusterrolebinding.yaml @@ -13,11 +13,12 @@ subjects: - kind: ServiceAccount name: {{ include "argo-cd.controller.serviceAccountName" . }} namespace: {{ include "argo-cd.namespace" . }} -{{- if .Values.configs.params.applicationsetcontroller.namespaces }} -{{- range (split "," .Values.configs.params.applicationsetcontroller.namespaces) }} +{{- $namespaces := index .Values.configs.params "applicationsetcontroller.namespaces" -}} +{{- range $namespace := (split "," $namespaces) }} + {{- if $namespaces }} - kind: ServiceAccount - name: {{ include "argo-cd.controller.serviceAccountName" $root }} - namespace: {{ . | trim }} -{{- end }} + name: {{ include "argo-cd.controller.serviceAccountName" $ }} + namespace: {{ $namespace | trim | quote }} + {{- end }} {{- end }} {{- end }} diff --git a/charts/argo-cd/values.yaml b/charts/argo-cd/values.yaml index fc41ef6d..ab7f0bed 100644 --- a/charts/argo-cd/values.yaml +++ b/charts/argo-cd/values.yaml @@ -279,8 +279,8 @@ configs: # -- Enables use of the Progressive Syncs capability applicationsetcontroller.enable.progressive.syncs: false -+ # -- A list of glob patterns specifying where to look for ApplicationSet resources. (e.g. `"namespace1, namespace2"`) - applicationsetcontroller.namespaces: "" + # -- A list of glob patterns specifying where to look for ApplicationSet resources. (e.g. `"namespace1, namespace2"`) + applicationsetcontroller.namespaces: "namespace1, namespace2" # -- Enables [Applications in any namespace] ## List of additional namespaces where applications may be created in and reconciled from.