-
Notifications
You must be signed in to change notification settings - Fork 300
Description
Describe your Issue
At the moment it is impossible to mount a data directory which is not $somepath/data.
The offending code is in lines 218-226 of deployment.yaml:
{{- if and .Values.persistence.nextcloudData.enabled .Values.persistence.enabled }}
- name: nextcloud-data
mountPath: {{ .Values.nextcloud.datadir }}
subPath: {{ ternary "data" (printf "%s/data" .Values.persistence.nextcloudData.subPath) (empty .Values.persistence.nextcloudData.subPath) }}
{{- else }}
- name: nextcloud-main
mountPath: {{ .Values.nextcloud.datadir }}
subPath: {{ ternary "data" (printf "%s/data" .Values.persistence.subPath) (empty .Values.persistence.subPath) }}
{{- end }}We see that /data is being appended irrespective of the content or existence of subPath.
Another issue is that the data dir is only used if also .Values.persistence.enabled is enabled and it would be convenient to remove this unnecessary and-condition in the same PR, but I am not yet familiar with how atomic we like our PRs here. :-) (context would be #532)
Approaches
I think there are basically two ways to deal with this.
-
The cleaner version would be to set
/dataas the subPath-default Value, so it would only break for people who have set a subPath and they would need to update their values accordingly. -
The not so nice but non-breaking change would be to add another boolean variable with a glorious name like
postFixDatawhich is by default set to true and would then use the old logic, and if it is not set to true it would drop the subPath if empty and not add/dataif it is set.
So, which approach do we prefer or did I possibly even miss a trick to make this work without code change?