diff --git a/src/main/helm/templates/_helpers.tpl b/src/main/helm/templates/_helpers.tpl index 3f621195330d4af82088262c265fd131e3549b36..df89c628cffdf7c780d4026787daa442f961f3a7 100644 --- a/src/main/helm/templates/_helpers.tpl +++ b/src/main/helm/templates/_helpers.tpl @@ -70,7 +70,7 @@ app.kubernetes.io/namespace: {{ include "app.namespace" . }} {{- required "baseUrl muss angegeben sein" .Values.baseUrl }} {{- end -}} -{{- define "app.serviceAccountName" -}} +{{- define "app.getServiceAccountName" -}} {{ printf "%s" ( (.Values.serviceAccount).name | default "xta-test-server-service-account" ) }} {{- end -}} diff --git a/src/main/helm/templates/deployment.yaml b/src/main/helm/templates/deployment.yaml index 1990efe8a755c1d3b7287f8ff0b28f95a837ce9a..2111b382554074f1cc09235dcad5c31e7c2d897f 100644 --- a/src/main/helm/templates/deployment.yaml +++ b/src/main/helm/templates/deployment.yaml @@ -48,7 +48,7 @@ spec: component: xta-test-server spec: {{- if (.Values.serviceAccount).create }} - serviceAccountName: {{ include "app.serviceAccountName" . }} + serviceAccountName: {{ include "app.getServiceAccountName" . }} {{- end }} topologySpreadConstraints: - maxSkew: 1 diff --git a/src/main/helm/templates/service_account.yaml b/src/main/helm/templates/service_account.yaml new file mode 100644 index 0000000000000000000000000000000000000000..8ee2faa572924ab37142e8f6c21bb440c5cf158c --- /dev/null +++ b/src/main/helm/templates/service_account.yaml @@ -0,0 +1,8 @@ + +{{- if (.Values.serviceAccount).create }} +apiVersion: v1 +kind: ServiceAccount +metadata: + name: {{ include "app.getServiceAccountName" . }} + namespace: {{ include "app.namespace" . }} +{{- end }} \ No newline at end of file diff --git a/src/test/helm/service_account_test.yaml b/src/test/helm/service_account_test.yaml new file mode 100644 index 0000000000000000000000000000000000000000..db871fdcda337c7094df9eab2266ff928d7f1081 --- /dev/null +++ b/src/test/helm/service_account_test.yaml @@ -0,0 +1,40 @@ +suite: service account test +release: + name: xta-test-server + namespace: helm-test +templates: + - templates/service_account.yaml +tests: + - it: should create service account with default name + set: + serviceAccount: + create: true + asserts: + - isKind: + of: ServiceAccount + - isAPIVersion: + of: v1 + - equal: + path: metadata.name + value: xta-test-server-service-account + - equal: + path: metadata.namespace + value: helm-test + - it: should create service account with name + set: + serviceAccount: + create: true + name: helm-service-account + asserts: + - isKind: + of: ServiceAccount + - equal: + path: metadata.name + value: helm-service-account + - equal: + path: metadata.namespace + value: helm-test + - it: should not create service account + asserts: + - hasDocuments: + count: 0 \ No newline at end of file