{{- if .Values.enableVolumeSnapshot }} #Snapshot controller kind: StatefulSet apiVersion: apps/v1 metadata: name: ebs-snapshot-controller labels: {{- include "aws-ebs-csi-driver.labels" . | nindent 4 }} spec: serviceName: ebs-snapshot-controller replicas: 1 selector: matchLabels: app: ebs-snapshot-controller {{- include "aws-ebs-csi-driver.selectorLabels" . | nindent 6 }} template: metadata: labels: app: ebs-snapshot-controller {{- include "aws-ebs-csi-driver.labels" . | nindent 8 }} spec: serviceAccountName: {{ .Values.serviceAccount.snapshot.name }} nodeSelector: kubernetes.io/os: linux {{- with .Values.nodeSelector }} {{ toYaml . | indent 8 }} {{- end }} priorityClassName: {{ .Values.priorityClassName | default "system-cluster-critical" }} {{- with .Values.affinity }} affinity: {{ toYaml . | nindent 8 }} {{- end }} tolerations: {{- if .Values.tolerateAllTaints }} - operator: Exists {{- end }} {{- with .Values.tolerations }} {{ toYaml . | indent 8 }} {{- end }} containers: - name: snapshot-controller image: {{ printf "%s:%s" .Values.snapshotController.repository .Values.snapshotController.tag }} {{- with .Values.resources }} resources: {{ toYaml . | nindent 12 }} {{- end }} env: {{- if .Values.proxy.http_proxy }} - name: HTTP_PROXY value: {{ .Values.proxy.http_proxy | quote }} - name: HTTPS_PROXY value: {{ .Values.proxy.http_proxy | quote }} - name: NO_PROXY value: {{ .Values.proxy.no_proxy | quote }} {{- end }} args: - --v={{ .Values.logLevel }} - --leader-election=false {{- if .Values.imagePullSecrets }} imagePullSecrets: {{- range .Values.imagePullSecrets }} - name: {{ . }} {{- end }} {{- end }} {{- end }}