22apiVersion : apps/v1
33kind : DaemonSet
44metadata :
5- name : {{ include "operator.fullname" . }}-daemonset
5+ name : {{ include "operator.fullname" . }}-csi-node-driver
66 labels :
77 {{- include "operator.labels" . | nindent 4 }}
88spec :
@@ -11,28 +11,36 @@ spec:
1111 {{- include "operator.selectorLabels" . | nindent 6 }}
1212 template :
1313 metadata :
14- {{- with .Values.podAnnotations }}
1514 annotations :
16- {{- toYaml . | nindent 8 }}
17- {{- end }}
15+ internal.stackable.tech/image : " {{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
16+ {{- with .Values.csiNodeDriver.podAnnotations }}
17+ {{- toYaml . | nindent 8 }}
18+ {{- end }}
1819 labels :
1920 {{- include "operator.selectorLabels" . | nindent 8 }}
2021 spec :
2122 {{- with .Values.image.pullSecrets }}
2223 imagePullSecrets :
2324 {{- toYaml . | nindent 8 }}
2425 {{- end }}
26+ # NOTE (@Techassi): Does it maybe make sense to have two different service accounts?
2527 serviceAccountName : {{ include "operator.fullname" . }}-serviceaccount
2628 securityContext :
27- {{- toYaml .Values.podSecurityContext | nindent 8 }}
29+ {{- toYaml .Values.csiNodeDriver. podSecurityContext | nindent 8 }}
2830 containers :
29- - name : {{ include "operator.appname" . }}
31+ - name : csi-node-service
3032 securityContext :
31- {{- toYaml .Values.secretOperator .securityContext | nindent 12 }}
32- image : " {{ .Values.secretOperator. image.repository }}:{{ .Values.secretOperator .image.tag | default .Chart.AppVersion }}"
33- imagePullPolicy : {{ .Values.secretOperator. image.pullPolicy }}
33+ {{- toYaml .Values.csiNodeDriver.nodeService .securityContext | nindent 12 }}
34+ image : " {{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
35+ imagePullPolicy : {{ .Values.image.pullPolicy }}
3436 resources :
35- {{ .Values.secretOperator.resources | toYaml | nindent 12 }}
37+ {{ .Values.csiNodeDriver.nodeService.resources | toYaml | nindent 12 }}
38+ # The arguments passed to the command being run in the container. The final command will
39+ # look like `secret-operator run csi-server [OPTIONS]`. The CSI server needs to run on
40+ # every Kubernetes cluster node and as such is deployed as a DaemonSet.
41+ args :
42+ - run
43+ - csi-node-service
3644 env :
3745 # The following env vars are passed as clap (think CLI) arguments to the operator.
3846 # They are picked up by clap using the structs defied in the operator.
4250 - name : CSI_ENDPOINT
4351 value : /csi/csi.sock
4452 - name : PRIVILEGED
45- value : {{ .Values.secretOperator .securityContext.privileged | quote }}
53+ value : {{ .Values.csiNodeDriver.nodeService .securityContext.privileged | quote }}
4654
4755 # Sometimes products need to know the operator image, e.g. the opa-bundle-builder OPA
4856 # sidecar uses the operator image.
@@ -80,32 +88,34 @@ spec:
8088 - name : csi
8189 mountPath : /csi
8290 - name : mountpoint
83- mountPath : {{ .Values.kubeletDir }}/pods
84- {{- if .Values.secretOperator .securityContext.privileged }}
91+ mountPath : {{ .Values.csiNodeDriver. kubeletDir }}/pods
92+ {{- if .Values.csiNodeDriver.nodeService .securityContext.privileged }}
8593 mountPropagation : Bidirectional
8694 {{- end }}
8795 - name : tmp
8896 mountPath : /tmp
97+
8998 - name : external-provisioner
90- image : " {{ .Values.externalProvisioner.image.repository }}:{{ .Values.externalProvisioner.image.tag }}"
91- imagePullPolicy : {{ .Values.externalProvisioner.image.pullPolicy }}
99+ image : " {{ .Values.csiNodeDriver. externalProvisioner.image.repository }}:{{ .Values.csiNodeDriver .externalProvisioner.image.tag }}"
100+ imagePullPolicy : {{ .Values.csiNodeDriver. externalProvisioner.image.pullPolicy }}
92101 resources :
93- {{ .Values.externalProvisioner.resources | toYaml | nindent 12 }}
102+ {{ .Values.csiNodeDriver. externalProvisioner.resources | toYaml | nindent 12 }}
94103 args :
95104 - --csi-address=/csi/csi.sock
96105 - --feature-gates=Topology=true
97106 - --extra-create-metadata
98107 volumeMounts :
99108 - name : csi
100109 mountPath : /csi
110+
101111 - name : node-driver-registrar
102- image : " {{ .Values.nodeDriverRegistrar.image.repository }}:{{ .Values.nodeDriverRegistrar.image.tag }}"
103- imagePullPolicy : {{ .Values.nodeDriverRegistrar.image.pullPolicy }}
112+ image : " {{ .Values.csiNodeDriver. nodeDriverRegistrar.image.repository }}:{{ .Values.csiNodeDriver .nodeDriverRegistrar.image.tag }}"
113+ imagePullPolicy : {{ .Values.csiNodeDriver. nodeDriverRegistrar.image.pullPolicy }}
104114 resources :
105- {{ .Values.nodeDriverRegistrar.resources | toYaml | nindent 12 }}
115+ {{ .Values.csiNodeDriver. nodeDriverRegistrar.resources | toYaml | nindent 12 }}
106116 args :
107117 - --csi-address=/csi/csi.sock
108- - --kubelet-registration-path={{ .Values.kubeletDir }}/plugins/secrets.stackable.tech/csi.sock
118+ - --kubelet-registration-path={{ .Values.csiNodeDriver. kubeletDir }}/plugins/secrets.stackable.tech/csi.sock
109119 volumeMounts :
110120 - name : registration-sock
111121 mountPath : /registration
@@ -116,27 +126,27 @@ spec:
116126 hostPath :
117127 # node-driver-registrar appends a driver-unique filename to this path to avoid conflicts
118128 # see https://github.com/stackabletech/secret-operator/issues/229 for why this path should not be too long
119- path : {{ .Values.kubeletDir }}/plugins_registry
129+ path : {{ .Values.csiNodeDriver. kubeletDir }}/plugins_registry
120130 - name : csi
121131 hostPath :
122- path : {{ .Values.kubeletDir }}/plugins/secrets.stackable.tech/
132+ path : {{ .Values.csiNodeDriver. kubeletDir }}/plugins/secrets.stackable.tech/
123133 - name : mountpoint
124134 hostPath :
125- path : {{ .Values.kubeletDir }}/pods/
135+ path : {{ .Values.csiNodeDriver. kubeletDir }}/pods/
126136 - name : tmp
127137 emptyDir : {}
128- {{- with .Values.nodeSelector }}
138+ {{- with .Values.csiNodeDriver. nodeSelector }}
129139 nodeSelector :
130140 {{- toYaml . | nindent 8 }}
131141 {{- end }}
132- {{- with .Values.affinity }}
142+ {{- with .Values.csiNodeDriver. affinity }}
133143 affinity :
134144 {{- toYaml . | nindent 8 }}
135145 {{- end }}
136- {{- with .Values.tolerations }}
146+ {{- with .Values.csiNodeDriver. tolerations }}
137147 tolerations :
138148 {{- toYaml . | nindent 8 }}
139149 {{- end }}
140- {{- with .Values.priorityClassName }}
150+ {{- with .Values.csiNodeDriver. priorityClassName }}
141151 priorityClassName : {{ . }}
142152 {{- end }}
0 commit comments