Skip to content

Commit 5bc4815

Browse files
authored
Merge pull request #4380 from monteiro-renato/patch-1
✨ feat: (helm/v1alpha1): Allow ServiceAccount annotations to be configurable
2 parents 8911e2f + 6e638c4 commit 5bc4815

File tree

2 files changed

+19
-0
lines changed

2 files changed

+19
-0
lines changed

pkg/plugins/optional/helm/v1alpha/scaffolds/init.go

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -293,6 +293,19 @@ func copyFileWithHelmLogic(srcFile, destFile, subDir, projectName string) error
293293
contentStr = strings.Replace(contentStr,
294294
"name: metrics-reader",
295295
fmt.Sprintf("name: %s-metrics-reader", projectName), 1)
296+
if strings.Contains(contentStr, "-controller-manager") &&
297+
strings.Contains(contentStr, "kind: ServiceAccount") &&
298+
!strings.Contains(contentStr, "RoleBinding") {
299+
// The generated Service Account does not have the annotations field so we must add it.
300+
contentStr = strings.Replace(contentStr,
301+
"metadata:", `metadata:
302+
{{- if and .Values.controllerManager.serviceAccount .Values.controllerManager.serviceAccount.annotations }}
303+
annotations:
304+
{{- range $key, $value := .Values.controllerManager.serviceAccount.annotations }}
305+
{{ $key }}: {{ $value }}
306+
{{- end }}
307+
{{- end }}`, 1)
308+
}
296309
contentStr = strings.Replace(contentStr,
297310
"name: leader-election-role",
298311
fmt.Sprintf("name: %s-leader-election-role", projectName), -1)

testdata/project-v4-with-plugins/dist/chart/templates/rbac/service_account.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,12 @@ kind: ServiceAccount
44
metadata:
55
labels:
66
{{- include "chart.labels" . | nindent 4 }}
7+
{{- if and .Values.controllerManager.serviceAccount .Values.controllerManager.serviceAccount.annotations }}
8+
annotations:
9+
{{- range $key, $value := .Values.controllerManager.serviceAccount.annotations }}
10+
{{ $key }}: {{ $value }}
11+
{{- end }}
12+
{{- end }}
713
name: project-v4-with-plugins-controller-manager
814
namespace: {{ .Release.Namespace }}
915
{{- end -}}

0 commit comments

Comments
 (0)