support persistent volumes for postgres and the keep store
[arvados-k8s.git] / charts / arvados / templates / keep-store-deployment.yaml
1 # Copyright (C) The Arvados Authors. All rights reserved.
2 #
3 # SPDX-License-Identifier: Apache-2.0
4
5 apiVersion: apps/v1
6 kind: StatefulSet
7 metadata:
8   name: "arvados-keep-store"
9   labels:
10     app: arvados-keep-store
11     chart: {{ template "arvados.chart" . }}
12     release: {{ .Release.Name }}
13     heritage: {{ .Release.Service }}
14 spec:
15   replicas: 2
16   podManagementPolicy: Parallel
17   serviceName: arvados-keep-store
18   selector:
19     matchLabels:
20       app: arvados-keep-store
21       release: {{ .Release.Name }}
22   template:
23     metadata:
24       labels:
25         app: arvados-keep-store
26         release: {{ .Release.Name }}
27     spec:
28       terminationGracePeriodSeconds: 1
29       containers:
30         - name: arvados-keep-store
31           image: "cure/arvados-runtime"
32           imagePullPolicy: {{ .Values.image.pullPolicy }}
33           command:
34             - "sh"
35             - "-c"
36             - "mkdir /keepdata && /usr/local/bin/bootstrap.sh keepstore={{ .Values.arvados.versions.distribution.keepStore }} && GOGC=10 keepstore"
37           volumeMounts:
38             - name: etc-configmap
39               mountPath: /etc/arvados/config.yml
40               subPath: config.yml
41             {{- if .Values.keep.persistence.enabled }}
42             - name: keep-store-storage
43               mountPath: /keepdata
44             {{- end }}
45       volumes:
46         - name: etc-configmap
47           configMap:
48             name: etc-configmap
49   {{- if .Values.keep.persistence.enabled }}
50   volumeClaimTemplates:
51     - metadata:
52         name: keep-store-storage
53       spec:
54         storageClassName: {{ .Values.keep.persistence.storageClass }}
55         accessModes:
56           - ReadWriteOnce
57         resources:
58           requests:
59             storage: {{ .Values.keep.persistence.size }}
60   {{- end }}