{{- if .Values.db.enabled }} apiVersion: apps/v1 kind: StatefulSet metadata: name: db namespace: {{ .Values.namespace }} labels: app: db spec: serviceName: db replicas: 1 selector: matchLabels: app: db template: metadata: labels: app: db spec: initContainers: - name: volume-prep image: busybox command: ['sh', '-c', 'mkdir -p /data'] volumeMounts: - name: db-data mountPath: /data containers: - name: db image: "{{ .Values.db.image.repository }}:{{ .Values.db.image.tag }}" imagePullPolicy: Always ports: - containerPort: {{ .Values.db.service.port }} name: cql env: - name: POSTGRES_PASSWORD valueFrom: secretKeyRef: name: db-credentials key: DB_PASSWORD_SUPERUSER {{- if .Values.db.persistence.enabled }} volumeMounts: - name: db-data mountPath: /var/lib/postgresql/data subPath: data {{- end }} {{- if .Values.db.persistence.enabled }} volumes: - name: db-data persistentVolumeClaim: {{- if .Values.db.persistence.existingClaim }} claimName: {{ .Values.db.persistence.existingClaim }} {{- else }} claimName: {{ .Values.db.persistence.claimName }} {{- end }} {{- end }} {{- end }}