blob: 5cf32c631cf9e9c043532f4c754001c707a96b9b [file] [log] [blame]
Giorgi Lekveishvili4ec4c022024-08-17 15:09:24 +04001apiVersion: apps/v1
2kind: StatefulSet
3metadata:
4 name: soft-serve
5 namespace: {{ .Release.Namespace }}
6spec:
7 selector:
8 matchLabels:
9 app: soft-serve
10 serviceName: soft-serve
11 replicas: 1
12 template:
13 metadata:
14 labels:
15 app: soft-serve
16 spec:
17 volumes:
18 - name: data
19 persistentVolumeClaim:
Giorgi Lekveishvilid4eb5862024-08-29 15:05:25 +040020 claimName: {{ .Values.persistentVolumeClaimName }}
Giorgi Lekveishvili4ec4c022024-08-17 15:09:24 +040021 {{ if and .Values.privateKey .Values.publicKey }}
22 - name: keys
23 configMap:
24 name: keys
25 {{ end }}
26 containers:
27 - name: soft-serve
28 image: {{ .Values.image.repository }}:{{ .Values.image.tag }}
29 imagePullPolicy: {{ .Values.image.pullPolicy}}
30 env:
31 - name: SOFT_SERVE_SSH_LISTEN_ADDR
32 value: ":{{ .Values.port }}"
33 - name: SOFT_SERVE_SSH_PUBLIC_URL
Giorgi Lekveishvili627f6c42024-08-29 15:31:07 +040034 value: "ssh://{{ .Values.host }}:{{ .Values.sshPublicPort }}"
Giorgi Lekveishvili4ec4c022024-08-17 15:09:24 +040035 - name: SOFT_SERVE_INITIAL_ADMIN_KEYS
36 value: |-
37{{ indent 12 .Values.adminKey }}
38 {{ if and .Values.privateKey .Values.publicKey }}
39 - name: SOFT_SERVE_SSH_KEY_PATH
40 value: /.ssh/key
41 {{ end }}
42 - name: SOFT_SERVE_DATA_PATH
43 value: /var/lib/soft-serve/repos
44 - name: SOFT_SERVE_HTTP_LISTEN_ADDR
45 value: ":80"
46 - name: SOFT_SERVE_HTTP_PUBLIC_URL
Giorgi Lekveishvili627f6c42024-08-29 15:31:07 +040047 value: "http://{{ .Values.host }}"
Giorgi Lekveishvili4ec4c022024-08-17 15:09:24 +040048 ports:
49 - name: ssh
50 containerPort: {{ .Values.port }}
51 protocol: TCP
52 - name: http
53 containerPort: 80
54 protocol: TCP
55 volumeMounts:
56 - name: data
57 mountPath: /var/lib/soft-serve
58 readOnly: false
59 {{ if and .Values.privateKey .Values.publicKey }}
60 - name: keys
61 mountPath: /.ssh
62 readOnly: true
63 {{ end }}