Skip to content

Commit cfa1693

Browse files
authored
Merge pull request crossplane#5870 from rpolansky/service-account-creation
Crossplane Helm chart service account creation flag
2 parents 8e05a57 + a0025d3 commit cfa1693

File tree

5 files changed

+16
-0
lines changed

5 files changed

+16
-0
lines changed

cluster/charts/crossplane/README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,9 @@ and their default values.
125125
| `securityContextRBACManager.runAsGroup` | The group ID used by the RBAC Manager pod. | `65532` |
126126
| `securityContextRBACManager.runAsUser` | The user ID used by the RBAC Manager pod. | `65532` |
127127
| `service.customAnnotations` | Configure annotations on the service object. Only enabled when webhooks.enabled = true | `{}` |
128+
| `serviceAccount.create` | Specifies whether Crossplane ServiceAccount should be created | `true` |
128129
| `serviceAccount.customAnnotations` | Add custom `annotations` to the Crossplane ServiceAccount. | `{}` |
130+
| `serviceAccount.name` | Provide the name of an already created Crossplane ServiceAccount. Required when `serviceAccount.create` is `false` | `""` |
129131
| `tolerations` | Add `tolerations` to the Crossplane pod deployment. | `[]` |
130132
| `topologySpreadConstraints` | Add `topologySpreadConstraints` to the Crossplane pod deployment. | `[]` |
131133
| `webhooks.enabled` | Enable webhooks for Crossplane and installed Provider packages. | `true` |

cluster/charts/crossplane/templates/clusterrolebinding.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,5 +11,9 @@ roleRef:
1111
name: {{ template "crossplane.name" . }}
1212
subjects:
1313
- kind: ServiceAccount
14+
{{- if not .Values.serviceAccount.create }}
15+
name: {{ .Values.serviceAccount.name }}
16+
{{- else }}
1417
name: {{ template "crossplane.name" . }}
18+
{{- end }}
1519
namespace: {{ .Release.Namespace }}

cluster/charts/crossplane/templates/deployment.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,11 @@ spec:
4747
{{- if .Values.priorityClassName }}
4848
priorityClassName: {{ .Values.priorityClassName | quote }}
4949
{{- end }}
50+
{{- if not .Values.serviceAccount.create }}
51+
serviceAccountName: {{ .Values.serviceAccount.name }}
52+
{{- else }}
5053
serviceAccountName: {{ template "crossplane.name" . }}
54+
{{- end }}
5155
hostNetwork: {{ .Values.hostNetwork }}
5256
initContainers:
5357
- image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default (printf "v%s" .Chart.AppVersion) }}"

cluster/charts/crossplane/templates/serviceaccount.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
{{- if .Values.serviceAccount.create }}
12
apiVersion: v1
23
kind: ServiceAccount
34
metadata:
@@ -15,3 +16,4 @@ imagePullSecrets:
1516
- name: {{ $secret }}
1617
{{- end }}
1718
{{ end }}
19+
{{- end }}

cluster/charts/crossplane/values.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,10 @@ customLabels: {}
4040
customAnnotations: {}
4141

4242
serviceAccount:
43+
# -- Specifies whether Crossplane ServiceAccount should be created
44+
create: true
45+
# -- Provide the name of an already created Crossplane ServiceAccount. Required when `serviceAccount.create` is `false`
46+
name: ""
4347
# -- Add custom `annotations` to the Crossplane ServiceAccount.
4448
customAnnotations: {}
4549

0 commit comments

Comments
 (0)