blob: c901003da6b876ce51e05a09b149d970a45dc497 [file] [log] [blame]
Giorgi Lekveishviliea328da2026-07-29 12:15:15 +04001{{- if .Values.persistence.createStorageClass }}
Giorgi Lekveishvili4ec4c022024-08-17 15:09:24 +04002apiVersion: v1
3kind: ConfigMap
4metadata:
5 name: longhorn-storageclass
6 namespace: {{ include "release_namespace" . }}
7 labels: {{- include "longhorn.labels" . | nindent 4 }}
8data:
9 storageclass.yaml: |
10 kind: StorageClass
11 apiVersion: storage.k8s.io/v1
12 metadata:
13 name: longhorn
14 annotations:
15 storageclass.kubernetes.io/is-default-class: {{ .Values.persistence.defaultClass | quote }}
Giorgi Lekveishviliea328da2026-07-29 12:15:15 +040016 {{- range $key, $value := .Values.persistence.annotations }}
17 {{ $key }}: {{ $value | quote }}
18 {{- end }}
Giorgi Lekveishvili4ec4c022024-08-17 15:09:24 +040019 provisioner: driver.longhorn.io
20 allowVolumeExpansion: true
21 reclaimPolicy: "{{ .Values.persistence.reclaimPolicy }}"
Giorgi Lekveishvilid87487d2025-07-07 14:03:30 +040022 volumeBindingMode: {{ .Values.persistence.volumeBindingMode | default "Immediate" }}
Giorgi Lekveishvili4ec4c022024-08-17 15:09:24 +040023 parameters:
24 numberOfReplicas: "{{ .Values.persistence.defaultClassReplicaCount }}"
25 staleReplicaTimeout: "30"
26 fromBackup: ""
27 {{- if .Values.persistence.defaultFsType }}
28 fsType: "{{ .Values.persistence.defaultFsType }}"
29 {{- end }}
30 {{- if .Values.persistence.defaultMkfsParams }}
31 mkfsParams: "{{ .Values.persistence.defaultMkfsParams }}"
32 {{- end }}
33 {{- if .Values.persistence.migratable }}
34 migratable: "{{ .Values.persistence.migratable }}"
35 {{- end }}
Giorgi Lekveishvili193b7c02025-05-22 16:21:37 +040036 {{- if .Values.persistence.nfsOptions }}
37 nfsOptions: "{{ .Values.persistence.nfsOptions }}"
38 {{- end }}
Giorgi Lekveishvili4ec4c022024-08-17 15:09:24 +040039 {{- if .Values.persistence.backingImage.enable }}
40 backingImage: {{ .Values.persistence.backingImage.name }}
41 backingImageDataSourceType: {{ .Values.persistence.backingImage.dataSourceType }}
42 backingImageDataSourceParameters: {{ .Values.persistence.backingImage.dataSourceParameters }}
43 backingImageChecksum: {{ .Values.persistence.backingImage.expectedChecksum }}
44 {{- end }}
45 {{- if .Values.persistence.recurringJobSelector.enable }}
46 recurringJobSelector: '{{ .Values.persistence.recurringJobSelector.jobList }}'
47 {{- end }}
48 dataLocality: {{ .Values.persistence.defaultDataLocality | quote }}
Giorgi Lekveishvili193b7c02025-05-22 16:21:37 +040049 {{- if .Values.persistence.defaultDiskSelector.enable }}
50 diskSelector: "{{ .Values.persistence.defaultDiskSelector.selector }}"
51 {{- end }}
Giorgi Lekveishvili4ec4c022024-08-17 15:09:24 +040052 {{- if .Values.persistence.defaultNodeSelector.enable }}
53 nodeSelector: "{{ .Values.persistence.defaultNodeSelector.selector }}"
54 {{- end }}
Giorgi Lekveishviliea328da2026-07-29 12:15:15 +040055 {{- if .Values.persistence.shareManagerNodeSelector.enable }}
56 shareManagerNodeSelector: "{{ .Values.persistence.shareManagerNodeSelector.selector }}"
57 {{- end }}
58 {{- if .Values.persistence.shareManagerTolerations.enable }}
59 shareManagerTolerations: "{{ .Values.persistence.shareManagerTolerations.tolerations }}"
60 {{- end }}
61 {{- if .Values.persistence.unmapMarkSnapChainRemoved }}
62 unmapMarkSnapChainRemoved: "{{ .Values.persistence.unmapMarkSnapChainRemoved }}"
Giorgi Lekveishvili193b7c02025-05-22 16:21:37 +040063 {{- end }}
64 {{- if .Values.persistence.disableRevisionCounter }}
65 disableRevisionCounter: "{{ .Values.persistence.disableRevisionCounter }}"
66 dataEngine: "{{ .Values.persistence.dataEngine }}"
67 {{- end }}
Giorgi Lekveishvilid87487d2025-07-07 14:03:30 +040068 {{- if .Values.persistence.backupTargetName }}
69 backupTargetName: "{{ .Values.persistence.backupTargetName }}"
70 {{- end }}
Giorgi Lekveishviliea328da2026-07-29 12:15:15 +040071{{- end }}