Skip to content
This repository was archived by the owner on Nov 26, 2025. It is now read-only.

Commit ab0d053

Browse files
Merge pull request #117 from teo/custom-pvc
Allow use of existing PVCs in values.yaml
2 parents 3840c46 + 830e4d4 commit ab0d053

File tree

10 files changed

+72
-27
lines changed

10 files changed

+72
-27
lines changed

charts/opencloud/templates/collaboration/deployment.yaml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -146,9 +146,13 @@ spec:
146146
{{- toYaml .Values.onlyoffice.collaboration.resources | nindent 12 }}
147147
volumes:
148148
- name: etc-opencloud
149-
{{- if .Values.opencloud.persistence.enabled }}
149+
{{- if .Values.opencloud.persistence.config.enabled }}
150150
persistentVolumeClaim:
151+
{{- if .Values.opencloud.persistence.config.existingClaim }}
152+
claimName: {{ .Values.opencloud.persistence.config.existingClaim | quote }}
153+
{{- else }}
151154
claimName: {{ include "opencloud.opencloud.fullname" . }}-config
155+
{{- end }}
152156
readOnly: true
153157
{{- else }}
154158
# If persistence is disabled, use an init container to copy the config

charts/opencloud/templates/minio/deployment.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,11 @@ spec:
107107
- name: data
108108
{{- if .Values.opencloud.storage.s3.internal.persistence.enabled }}
109109
persistentVolumeClaim:
110+
{{- if .Values.opencloud.storage.s3.internal.persistence.existingClaim }}
111+
claimName: {{ .Values.opencloud.storage.s3.internal.persistence.existingClaim | quote }}
112+
{{- else }}
110113
claimName: {{ include "opencloud.minio.fullname" . }}-data
114+
{{- end }}
111115
{{- else }}
112116
emptyDir: {}
113117
{{- end }}

charts/opencloud/templates/minio/pvc.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
{{- if .Values.opencloud.storage.s3.internal.persistence.enabled }}
1+
{{- if and .Values.opencloud.storage.s3.internal.persistence.enabled (not .Values.opencloud.storage.s3.internal.persistence.existingClaim) }}
22
apiVersion: v1
33
kind: PersistentVolumeClaim
44
metadata:

charts/opencloud/templates/onlyoffice/deployment.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,10 @@ spec:
9797
{{- if .Values.onlyoffice.persistence.enabled }}
9898
- name: onlyoffice-data
9999
persistentVolumeClaim:
100+
{{- if .Values.onlyoffice.persistence.existingClaim }}
101+
claimName: {{ .Values.onlyoffice.persistence.existingClaim | quote }}
102+
{{- else }}
100103
claimName: {{ include "opencloud.fullname" . }}-onlyoffice-data
104+
{{- end }}
101105
{{- end }}
102106
{{- end }}

charts/opencloud/templates/onlyoffice/pvc.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
{{- if and .Values.onlyoffice.enabled .Values.onlyoffice.persistence.enabled }}
1+
{{- if and .Values.onlyoffice.enabled (and .Values.onlyoffice.persistence.enabled (not .Values.onlyoffice.persistence.existingClaim)) }}
22
apiVersion: v1
33
kind: PersistentVolumeClaim
44
metadata:

charts/opencloud/templates/opencloud/deployment.yaml

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -417,16 +417,24 @@ spec:
417417
{{- toYaml .Values.opencloud.resources | nindent 12 }}
418418
volumes:
419419
- name: config
420-
{{- if .Values.opencloud.persistence.enabled }}
420+
{{- if .Values.opencloud.persistence.config.enabled }}
421421
persistentVolumeClaim:
422+
{{- if .Values.opencloud.persistence.config.existingClaim }}
423+
claimName: {{ .Values.opencloud.persistence.config.existingClaim | quote }}
424+
{{- else }}
422425
claimName: {{ include "opencloud.opencloud.fullname" . }}-config
426+
{{- end }}
423427
{{- else }}
424428
emptyDir: {}
425429
{{- end }}
426430
- name: data
427-
{{- if .Values.opencloud.persistence.enabled }}
431+
{{- if .Values.opencloud.persistence.data.enabled }}
428432
persistentVolumeClaim:
433+
{{- if .Values.opencloud.persistence.data.existingClaim }}
434+
claimName: {{ .Values.opencloud.persistence.data.existingClaim | quote }}
435+
{{- else }}
429436
claimName: {{ include "opencloud.opencloud.fullname" . }}-data
437+
{{- end }}
430438
{{- else }}
431439
emptyDir: {}
432440
{{- end }}
Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
{{- if and .Values.opencloud.enabled .Values.opencloud.persistence.enabled }}
1+
{{- if and .Values.opencloud.enabled (and .Values.opencloud.persistence.config.enabled (not .Values.opencloud.persistence.config.existingClaim)) }}
22
apiVersion: v1
33
kind: PersistentVolumeClaim
44
metadata:
@@ -10,17 +10,19 @@ metadata:
1010
app.kubernetes.io/component: opencloud
1111
spec:
1212
accessModes:
13-
- {{ .Values.opencloud.persistence.accessMode | quote }}
13+
- {{ .Values.opencloud.persistence.config.accessMode | quote }}
1414
resources:
1515
requests:
16-
storage: {{ .Values.opencloud.persistence.configSize | quote }}
17-
{{- if .Values.opencloud.persistence.storageClass }}
18-
{{- if (eq "-" .Values.opencloud.persistence.storageClass) }}
16+
storage: {{ .Values.opencloud.persistence.config.size | quote }}
17+
{{- if .Values.opencloud.persistence.config.storageClass }}
18+
{{- if (eq "-" .Values.opencloud.persistence.config.storageClass) }}
1919
storageClassName: ""
2020
{{- else }}
21-
storageClassName: {{ .Values.opencloud.persistence.storageClass | quote }}
21+
storageClassName: {{ .Values.opencloud.persistence.config.storageClass | quote }}
2222
{{- end }}
2323
{{- end }}
24+
{{- end }}
25+
{{- if and .Values.opencloud.enabled (and .Values.opencloud.persistence.data.enabled (not .Values.opencloud.persistence.data.existingClaim)) }}
2426
---
2527
apiVersion: v1
2628
kind: PersistentVolumeClaim
@@ -33,15 +35,16 @@ metadata:
3335
app.kubernetes.io/component: opencloud
3436
spec:
3537
accessModes:
36-
- {{ .Values.opencloud.persistence.accessMode | quote }}
38+
- {{ .Values.opencloud.persistence.data.accessMode | quote }}
3739
resources:
3840
requests:
39-
storage: {{ .Values.opencloud.persistence.size | quote }}
40-
{{- if .Values.opencloud.persistence.storageClass }}
41-
{{- if (eq "-" .Values.opencloud.persistence.storageClass) }}
41+
storage: {{ .Values.opencloud.persistence.data.size | quote }}
42+
{{- if .Values.opencloud.persistence.data.storageClass }}
43+
{{- if (eq "-" .Values.opencloud.persistence.data.storageClass) }}
4244
storageClassName: ""
4345
{{- else }}
44-
storageClassName: {{ .Values.opencloud.persistence.storageClass | quote }}
46+
storageClassName: {{ .Values.opencloud.persistence.data.storageClass | quote }}
4547
{{- end }}
4648
{{- end }}
4749
{{- end }}
50+

charts/opencloud/templates/postgres/deployment.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,11 @@ spec:
6161
- name: data
6262
{{- if .Values.postgres.persistence.enabled }}
6363
persistentVolumeClaim:
64+
{{- if .Values.postgres.persistence.existingClaim }}
65+
claimName: {{ .Values.postgres.persistence.existingClaim | quote }}
66+
{{- else }}
6467
claimName: {{ include "opencloud.postgres.fullname" . }}-data
68+
{{- end }}
6569
{{- else }}
6670
emptyDir: {}
6771
{{- end }}

charts/opencloud/templates/postgres/pvc.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
{{- if and .Values.postgres.enabled .Values.keycloak.internal.enabled .Values.postgres.persistence.enabled }}
1+
{{- if and .Values.postgres.enabled .Values.keycloak.internal.enabled (and .Values.postgres.persistence.enabled (not .Values.postgres.persistence.existingClaim)) }}
22
apiVersion: v1
33
kind: PersistentVolumeClaim
44
metadata:

charts/opencloud/values.yaml

Lines changed: 28 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -187,6 +187,8 @@ postgres:
187187
# Persistence configuration
188188
persistence:
189189
enabled: true
190+
# Name of existing PVC to use (overrides all other persistence values)
191+
existingClaim: ""
190192
# Size of the persistent volume
191193
size: 1Gi
192194
# Storage class
@@ -328,6 +330,8 @@ onlyoffice:
328330
persistence:
329331
# Enable persistence
330332
enabled: true
333+
# Name of existing PVC to use (overrides all other persistence values)
334+
existingClaim: ""
331335
# Size of the persistent volume
332336
size: 2Gi
333337
# Resources allocation
@@ -452,16 +456,28 @@ opencloud:
452456
memory: 20Gi
453457
# Persistence configuration
454458
persistence:
455-
# Enable persistence
456-
enabled: true
457-
# Size of the persistent volume for data
458-
size: 30Gi
459-
# Size of the persistent volume for config
460-
configSize: 5Gi
461-
# Storage class
462-
storageClass: ""
463-
# Access mode (ReadWriteOnce or ReadWriteMany for multiple replicas)
464-
accessMode: ReadWriteOnce
459+
config:
460+
# Enable persistence
461+
enabled: true
462+
# Name of existing PVC to use (overrides all other persistence values)
463+
existingClaim: ""
464+
# Size of the persistent volume for config
465+
size: 5Gi
466+
# Storage class
467+
storageClass: ""
468+
# Access mode (ReadWriteOnce or ReadWriteMany for multiple replicas)
469+
accessMode: ReadWriteOnce
470+
data:
471+
# Enable persistence
472+
enabled: true
473+
# Name of existing PVC to use (overrides all other persistence values)
474+
existingClaim: ""
475+
# Size of the persistent volume for data
476+
size: 30Gi
477+
# Storage class
478+
storageClass: ""
479+
# Access mode (ReadWriteOnce or ReadWriteMany for multiple replicas)
480+
accessMode: ReadWriteOnce
465481
# Configuration files
466482
config:
467483
theme: "owncloud"
@@ -599,6 +615,8 @@ opencloud:
599615
# Persistence configuration
600616
persistence:
601617
enabled: true
618+
# Name of existing PVC to use (overrides all other persistence values)
619+
existingClaim: ""
602620
# Size of the persistent volume
603621
size: 30Gi
604622
# Storage class

0 commit comments

Comments
 (0)