91 lines
4.0 KiB
YAML
91 lines
4.0 KiB
YAML
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: {{ template "cstor.fullname" . }}-cspc-operator
|
|
{{- with .Values.cspcOperator.annotations }}
|
|
annotations: {{ toYaml . | nindent 4 }}
|
|
{{- end }}
|
|
labels:
|
|
{{- include "cstor.cspcOperator.labels" . | nindent 4 }}
|
|
spec:
|
|
selector:
|
|
matchLabels:
|
|
{{- include "cstor.cspcOperator.matchLabels" . | nindent 6 }}
|
|
replicas: {{ .Values.cspcOperator.replicas }}
|
|
strategy:
|
|
type: Recreate
|
|
template:
|
|
metadata:
|
|
{{- with .Values.cspcOperator.podAnnotations }}
|
|
annotations: {{ toYaml . | nindent 8 }}
|
|
{{- end }}
|
|
labels:
|
|
{{- include "cstor.cspcOperator.labels" . | nindent 8 }}
|
|
{{- if .Values.cspcOperator.podLabels }}
|
|
{{ toYaml .Values.cspcOperator.podLabels | nindent 8 }}
|
|
{{- end }}
|
|
spec:
|
|
serviceAccountName: {{ .Values.serviceAccount.cstorOperator.name }}
|
|
containers:
|
|
- name: {{ template "cstor.fullname" . }}-cspc-operator
|
|
imagePullPolicy: {{ .Values.cspcOperator.image.pullPolicy }}
|
|
image: "{{ .Values.cspcOperator.image.registry }}{{ .Values.cspcOperator.image.repository }}:{{ .Values.cspcOperator.image.tag }}"
|
|
resources:
|
|
{{ toYaml .Values.cspcOperator.resources | indent 12 }}
|
|
env:
|
|
- name: OPENEBS_NAMESPACE
|
|
valueFrom:
|
|
fieldRef:
|
|
fieldPath: metadata.namespace
|
|
- name: OPENEBS_SERVICEACCOUNT_NAME
|
|
valueFrom:
|
|
fieldRef:
|
|
fieldPath: spec.serviceAccountName
|
|
- name: CSPC_OPERATOR_POD_NAME
|
|
valueFrom:
|
|
fieldRef:
|
|
fieldPath: metadata.name
|
|
{{- if .Values.cspcOperator.baseDir }}
|
|
# OPENEBS_IO_BASE_DIR is used to configure base directory for openebs on host path.
|
|
# Where OpenEBS can store required files. Default base path will be /var/openebs
|
|
- name: OPENEBS_IO_BASE_DIR
|
|
value: {{ .Values.cspcOperator.baseDir | quote }}
|
|
{{- end }}
|
|
{{- if .Values.cspcOperator.sparseDir }}
|
|
# OPENEBS_IO_CSTOR_POOL_SPARSE_DIR can be used to specify the hostpath
|
|
# to be used for saving the shared content between the side cars
|
|
# of cstor pool pod. This ENV is also used to indicate the location
|
|
# of the sparse devices.
|
|
# The default path used is /var/openebs/sparse
|
|
- name: OPENEBS_IO_CSTOR_POOL_SPARSE_DIR
|
|
value: "{{ .Values.cspcOperator.sparseDir }}"
|
|
{{- end }}
|
|
- name: OPENEBS_IO_CSPI_MGMT_IMAGE
|
|
value: "{{ .Values.cspcOperator.poolManager.image.registry }}{{ .Values.cspcOperator.poolManager.image.repository }}:{{ .Values.cspcOperator.poolManager.image.tag }}"
|
|
- name: OPENEBS_IO_CSTOR_POOL_IMAGE
|
|
value: "{{ .Values.cspcOperator.cstorPool.image.registry }}{{ .Values.cspcOperator.cstorPool.image.repository }}:{{ .Values.cspcOperator.cstorPool.image.tag }}"
|
|
- name: OPENEBS_IO_CSTOR_POOL_EXPORTER_IMAGE
|
|
value: "{{ .Values.cspcOperator.cstorPoolExporter.image.registry }}{{ .Values.cspcOperator.cstorPoolExporter.image.repository }}:{{ .Values.cspcOperator.cstorPoolExporter.image.tag }}"
|
|
- name: RESYNC_INTERVAL
|
|
value: "{{ .Values.cspcOperator.resyncInterval }}"
|
|
{{- if .Values.imagePullSecrets }}
|
|
- name: OPENEBS_IO_IMAGE_PULL_SECRETS
|
|
value: "{{- range $.Values.imagePullSecrets }}{{ .name }},{{- end }}"
|
|
{{- end }}
|
|
{{- if .Values.imagePullSecrets }}
|
|
imagePullSecrets:
|
|
{{ toYaml .Values.imagePullSecrets | indent 2 }}
|
|
{{- end }}
|
|
{{- if .Values.cspcOperator.nodeSelector }}
|
|
nodeSelector:
|
|
{{ toYaml .Values.cspcOperator.nodeSelector | indent 8 }}
|
|
{{- end }}
|
|
{{- if .Values.cspcOperator.securityContext }}
|
|
securityContext:
|
|
{{ toYaml .Values.cspcOperator.securityContext | indent 8 }}
|
|
{{- end }}
|
|
{{- if .Values.cspcOperator.tolerations }}
|
|
tolerations:
|
|
{{ toYaml .Values.cspcOperator.tolerations | indent 8 }}
|
|
{{- end }}
|