apiVersion: apps/v1
kind: StatefulSet
metadata:
  name: {{ include "step-certificates.fullname" . }}
  labels:
{{ include "step-certificates.labels" . | indent 4 }}
spec:
  # Only one replica is supported at this moment
  # Requested {{ .Values.replicaCount }}
  replicas: 1
  selector:
    matchLabels:
      app.kubernetes.io/name: {{ include "step-certificates.name" . }}
      app.kubernetes.io/instance: {{ .Release.Name }}
  serviceName: {{ include "step-certificates.fullname" . }}
  template:
    metadata:
      labels:
        app.kubernetes.io/name: {{ include "step-certificates.name" . }}
        app.kubernetes.io/instance: {{ .Release.Name }}
        app: {{ include "step-certificates.fullname" . }}
    spec:
{{- if .Release.IsInstall }}
      initContainers:
        - name: {{ .Chart.Name }}-init
          image: busybox:latest
          imagePullPolicy: {{ .Values.image.pullPolicy }}
          command: ["sleep", "20"]
{{- end }}
      securityContext:
        {{- if .Values.ca.runAsRoot }}
        runAsUser: 0
        {{- else }}
        runAsUser: 1000
        runAsNonRoot: true
        runAsGroup: 1000
        fsGroup: 1000
        allowPrivilegeEscalation: false
        {{- end }}
      containers:
        - name: {{ .Chart.Name }}
          image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
          imagePullPolicy: {{ .Values.image.pullPolicy }}
          command: ["/usr/local/bin/step-ca",
            "--password-file", "/home/step/secrets/passwords/password",
            "/home/step/config/ca.json"]
          env:
          - name: NAMESPACE
            value: "{{ .Release.Namespace }}"
          ports:
            - name: https
              containerPort: {{ .Values.service.targetPort }}
              protocol: TCP
          livenessProbe:
            initialDelaySeconds: 5
            httpGet:
              path: /health
              port: {{ .Values.service.targetPort }}
              scheme: HTTPS
          readinessProbe:
            initialDelaySeconds: 5
            httpGet:
              path: /health
              port: {{ .Values.service.targetPort }}
              scheme: HTTPS
          resources:
            {{- toYaml .Values.resources | nindent 12 }}
          volumeMounts:
          - name: certs
            mountPath: /home/step/certs
            readOnly: true
          - name: config
            mountPath: /home/step/config
            readOnly: true
          - name: secrets
            mountPath: /home/step/secrets
            readOnly: true
          - name: ca-password
            mountPath: /home/step/secrets/passwords
            readOnly: true
          {{- if .Values.ca.db.enabled }}
          - name: database
            mountPath: /home/step/db
            readOnly: false
          {{- end }}
      volumes:
      - name: certs
        configMap:
          name: {{ include "step-certificates.fullname" . }}-certs
      - name: config
        configMap:
          name: {{ include "step-certificates.fullname" . }}-config
      - name: secrets
        configMap:
          name: {{ include "step-certificates.fullname" . }}-secrets
      - name: ca-password
        secret:
          secretName: {{ include "step-certificates.fullname" . }}-ca-password
      {{- if and .Values.ca.db.enabled (not .Values.ca.db.persistent) }}
      - name: database
        emptyDir: {}
      {{- end }}
      {{- with .Values.nodeSelector }}
      nodeSelector:
      {{- toYaml . | nindent 8 }}
      {{- end }}
      {{- with .Values.affinity }}
      affinity:
      {{- toYaml . | nindent 8 }}
      {{- end }}
      {{- with .Values.tolerations }}
      tolerations:
      {{- toYaml . | nindent 8 }}
      {{- end }}
{{- if and .Values.ca.db.enabled .Values.ca.db.persistent }}
  volumeClaimTemplates:
  - metadata:
      name: database
      labels:
        app.kubernetes.io/name: {{ include "step-certificates.name" . }}
        app.kubernetes.io/instance: {{ .Release.Name }}
        app.kubernetes.io/managed-by: {{ .Release.Service }}
    spec:
      accessModes:
      {{- range .Values.ca.db.accessModes }}
        - {{ . | quote }}
      {{- end }}
      resources:
        requests:
          storage: {{ .Values.ca.db.size | quote }}
    {{- if .Values.ca.db.storageClass }}
    {{- if (eq "-" .Values.ca.db.storageClass) }}
      storageClassName: ""
    {{- else }}
      storageClassName: {{ .Values.ca.db.storageClass | quote }}
    {{- end }}
    {{- end }}
{{- end }}