apiVersion: apps/v1 kind: StatefulSet metadata: name: {{ include "heimdall.fullname" . }} labels: app: {{ include "heimdall.name" . }} spec: serviceName: {{ include "heimdall.fullname" . }} replicas: {{ .Values.replicaCount }} selector: matchLabels: app: {{ include "heimdall.name" . }} template: metadata: labels: app: {{ include "heimdall.name" . }} spec: containers: - name: heimdall image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}" imagePullPolicy: {{ .Values.image.pullPolicy }} env: {{- range $key, $value := .Values.env }} - name: {{ $key }} value: "{{ $value }}" {{- end }} ports: - name: http containerPort: 80 - name: https containerPort: 443 volumeMounts: - name: config mountPath: /config resources: {{- toYaml .Values.resources | nindent 12 }} volumeClaimTemplates: - metadata: name: config spec: accessModes: {{ .Values.persistence.accessModes }} resources: requests: storage: {{ .Values.persistence.size }} {{- if .Values.persistence.storageClass }} storageClassName: "{{ .Values.persistence.storageClass }}" {{- end }}