apiVersion: apps/v1
kind: StatefulSet
metadata:
  name: soft-serve
  namespace: {{ .Release.Namespace }}
spec:
  selector:
    matchLabels:
      app: soft-serve
  serviceName: soft-serve
  replicas: 1
  template:
    metadata:
      labels:
        app: soft-serve
    spec:
      volumes:
      - name: data
        persistentVolumeClaim:
          claimName: {{ .Values.persistentVolumeClaimName }}
      {{ if and .Values.privateKey .Values.publicKey }}
      - name: keys
        configMap:
          name: keys
      {{ end }}
      containers:
      - name: soft-serve
        image: {{ .Values.image.repository }}:{{ .Values.image.tag }}
        imagePullPolicy: {{ .Values.image.pullPolicy}}
        env:
        - name: SOFT_SERVE_SSH_LISTEN_ADDR
          value: ":{{ .Values.sshPort }}"
        - name: SOFT_SERVE_SSH_PUBLIC_URL
          value: "ssh://{{ .Values.host }}:{{ .Values.sshPublicPort }}"
        - name: SOFT_SERVE_INITIAL_ADMIN_KEYS
          value: |-
{{ indent 12 .Values.adminKey }}
        {{ if and .Values.privateKey .Values.publicKey }}
        - name: SOFT_SERVE_SSH_KEY_PATH
          value: /.ssh/key
        {{ end }}
        - name: SOFT_SERVE_DATA_PATH
          value: /var/lib/soft-serve/repos
        - name: SOFT_SERVE_HTTP_LISTEN_ADDR
          value: ":{{.Values.httpPort}}"
        - name: SOFT_SERVE_HTTP_PUBLIC_URL
          value: "http://{{ .Values.host }}"
        ports:
        - name: ssh
          containerPort: {{ .Values.sshPort }}
          protocol: TCP
        - name: http
          containerPort: {{ .Values.httpPort }}
          protocol: TCP
        volumeMounts:
        - name: data
          mountPath: /var/lib/soft-serve
          readOnly: false
        {{ if and .Values.privateKey .Values.publicKey }}
        - name: keys
          mountPath: /.ssh
          readOnly: true
        {{ end }}
