Skip to content

Commit f9ef838

Browse files
committed
chore(database): add persistence
1 parent 498aaed commit f9ef838

3 files changed

Lines changed: 49 additions & 0 deletions

File tree

charts/database/templates/database-deployment.yaml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,16 @@ spec:
7474
mountPath: /var/run/secrets/drycc/database/creds
7575
- name: objectstore-creds
7676
mountPath: /var/run/secrets/drycc/objectstore/creds
77+
{{- if .Values.persistence.enabled }}
78+
- name: database-data
79+
mountPath: /var/lib/postgresql
80+
{{- end }}
7781
volumes:
82+
{{- if .Values.persistence.enabled }}
83+
- name: database-data
84+
persistentVolumeClaim:
85+
claimName: drycc-database
86+
{{- end }}
7887
- name: database-creds
7988
secret:
8089
secretName: database-creds
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
{{- if .Values.persistence.enabled }}
2+
kind: PersistentVolumeClaim
3+
apiVersion: v1
4+
metadata:
5+
name: drycc-database
6+
labels:
7+
heritage: drycc
8+
spec:
9+
accessModes:
10+
- {{ .Values.persistence.accessMode | quote }}
11+
resources:
12+
requests:
13+
storage: {{ .Values.persistence.size | quote }}
14+
{{- if .Values.persistence.storageClass }}
15+
{{- if (eq "-" .Values.persistence.storageClass) }}
16+
storageClassName: ""
17+
{{- else }}
18+
storageClassName: "{{ .Values.persistence.storageClass }}"
19+
{{- end }}
20+
{{- end }}
21+
{{- if .Values.persistence.volumeName }}
22+
volumeName: "{{ .Values.persistence.volumeName }}"
23+
{{- end }}
24+
{{- end }}

charts/database/values.yaml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,22 @@ imageRegistry: "docker.io"
77
# limitsHugepages2Mi: 100Mi
88
# limitsHugepages1Gi: 2Gi
99
timeout: "1200"
10+
# GCP PDs and EBS volumes are supported only
11+
persistence:
12+
enabled: false # Set to true to enable persistence
13+
accessMode: ReadWriteOnce
14+
size: 5Gi # PVC size
15+
## database data Persistent Volume Storage Class
16+
## If defined, storageClassName: <storageClass>
17+
## If set to "-", storageClassName: "", which disables dynamic provisioning
18+
## If undefined (the default) or set to null, no storageClassName spec is
19+
## set, choosing the default provisioner. (gp2 on AWS, standard on
20+
## GKE, AWS & OpenStack)
21+
##
22+
## Storage class of PV to bind. By default it looks for standard storage class.
23+
## If the PV uses a different storage class, specify that here.
24+
storageClass: ""
25+
volumeName: ""
1026
# The username and password to be used by the on-cluster database.
1127
# If left empty they will be generated using randAlphaNum
1228
username: ""

0 commit comments

Comments
 (0)