27 lines
1.0 KiB
YAML
27 lines
1.0 KiB
YAML
{{- $vals := .Values }}
|
|
{{- range $class := .Values.storageClasses }}
|
|
{{- if $class.enabled }}
|
|
apiVersion: storage.k8s.io/v1
|
|
kind: StorageClass
|
|
metadata:
|
|
name: {{ $class.name }}
|
|
annotations:
|
|
"helm.sh/hook": post-install
|
|
"helm.sh/hook-weight": "-5"
|
|
{{- if $class.isDefault }}storageclass.kubernetes.io/is-default-class: "true"{{ end }}
|
|
provisioner: {{ $vals.provisionerName }}
|
|
reclaimPolicy: {{ $class.reclaimPolicy }}
|
|
volumeBindingMode: {{ $class.volumeBindingMode }}
|
|
allowVolumeExpansion: {{ $class.allowVolumeExpansion }}
|
|
mountOptions:
|
|
{{- toYaml ($class.mountOptions | default (list)) | nindent 2 }}
|
|
parameters:
|
|
csi.storage.k8s.io/fstype: {{ $class.fsType | default "ext4" }}
|
|
thinProvision: {{ $class.thinProvision | default "false" | toString | quote }}
|
|
formatOptions: {{ ($class.formatOptions | default (list)) | join " " | quote }}
|
|
copyOnWrite: {{ $class.copyOnWrite | default "false" | toString | quote }}
|
|
freezeFs: {{ $class.freezeFs | default "false" | toString | quote }}
|
|
---
|
|
{{- end }}
|
|
{{- end }}
|