diff --git a/stable/mariadb/Chart.yaml b/stable/mariadb/Chart.yaml index 84659e57b9..e494a1105e 100644 --- a/stable/mariadb/Chart.yaml +++ b/stable/mariadb/Chart.yaml @@ -1,6 +1,6 @@ apiVersion: v1 name: mariadb -version: 6.7.4 +version: 6.8.0 appVersion: 10.3.17 description: Fast, reliable, scalable, and easy to use open-source relational database system. MariaDB Server is intended for mission-critical, heavy-load production systems as well as for embedding into mass-deployed software. Highly available MariaDB cluster. keywords: diff --git a/stable/mariadb/README.md b/stable/mariadb/README.md index c61b3ba6ed..a42e0fcaef 100644 --- a/stable/mariadb/README.md +++ b/stable/mariadb/README.md @@ -51,6 +51,7 @@ The following table lists the configurable parameters of the MariaDB chart and t |-------------------------------------------|-----------------------------------------------------|-------------------------------------------------------------------| | `global.imageRegistry` | Global Docker image registry | `nil` | | `global.imagePullSecrets` | Global Docker registry secret names as an array | `[]` (does not add image pull secrets to deployed pods) | +| `global.storageClass` | Global storage class for dynamic provisioning | `nil` | | `image.registry` | MariaDB image registry | `docker.io` | | `image.repository` | MariaDB Image name | `bitnami/mariadb` | | `image.tag` | MariaDB Image tag | `{TAG_NAME}` | diff --git a/stable/mariadb/templates/_helpers.tpl b/stable/mariadb/templates/_helpers.tpl index 62d25e9bd4..b5a6574a91 100644 --- a/stable/mariadb/templates/_helpers.tpl +++ b/stable/mariadb/templates/_helpers.tpl @@ -172,3 +172,43 @@ Also, we can't use a single if because lazy evaluation is not an option {{- printf "%s/%s:%s" $registryName $repositoryName $tag -}} {{- end -}} {{- end -}} + +{{/* +Return the proper Storage Class for the master +*/}} +{{- define "mariadb.master.storageClass" -}} +{{- $storageClass := "" }} +{{- if .Values.master.persistence.storageClass -}} + {{- $storageClass = .Values.master.persistence.storageClass -}} +{{- end -}} +{{- if .Values.global -}} + {{- if .Values.global.storageClass -}} + {{- $storageClass = .Values.global.storageClass -}} + {{- end -}} +{{- end -}} +{{- if (eq "-" $storageClass) -}} + {{- printf "\"\"" -}} +{{- else }} + {{- printf "%s" $storageClass -}} +{{- end -}} +{{- end -}} + +{{/* +Return the proper Storage Class for the slave +*/}} +{{- define "mariadb.slave.storageClass" -}} +{{- $storageClass := "" }} +{{- if .Values.slave.persistence.storageClass -}} + {{- $storageClass = .Values.slave.persistence.storageClass -}} +{{- end -}} +{{- if .Values.global -}} + {{- if .Values.global.storageClass -}} + {{- $storageClass = .Values.global.storageClass -}} + {{- end -}} +{{- end -}} +{{- if (eq "-" $storageClass) -}} + {{- printf "\"\"" -}} +{{- else }} + {{- printf "%s" $storageClass -}} +{{- end -}} +{{- end -}} diff --git a/stable/mariadb/templates/master-statefulset.yaml b/stable/mariadb/templates/master-statefulset.yaml index a799473374..dcfdf9ffc0 100644 --- a/stable/mariadb/templates/master-statefulset.yaml +++ b/stable/mariadb/templates/master-statefulset.yaml @@ -261,11 +261,5 @@ spec: resources: requests: storage: {{ .Values.master.persistence.size | quote }} - {{- if .Values.master.persistence.storageClass }} - {{- if (eq "-" .Values.master.persistence.storageClass) }} - storageClassName: "" - {{- else }} - storageClassName: {{ .Values.master.persistence.storageClass | quote }} - {{- end }} - {{- end }} + storageClassName: {{ include "mariadb.master.storageClass" . }} {{- end }} diff --git a/stable/mariadb/templates/slave-statefulset.yaml b/stable/mariadb/templates/slave-statefulset.yaml index 73430e070a..b08ab36a62 100644 --- a/stable/mariadb/templates/slave-statefulset.yaml +++ b/stable/mariadb/templates/slave-statefulset.yaml @@ -232,13 +232,7 @@ spec: resources: requests: storage: {{ .Values.slave.persistence.size | quote }} - {{- if .Values.slave.persistence.storageClass }} - {{- if (eq "-" .Values.slave.persistence.storageClass) }} - storageClassName: "" - {{- else }} - storageClassName: {{ .Values.slave.persistence.storageClass | quote }} - {{- end }} - {{- end }} + storageClassName: {{ include "mariadb.slave.storageClass" . }} {{- else }} - name: "data" emptyDir: {} diff --git a/stable/mariadb/values-production.yaml b/stable/mariadb/values-production.yaml index 4d46473687..17ca8ed8e0 100644 --- a/stable/mariadb/values-production.yaml +++ b/stable/mariadb/values-production.yaml @@ -6,6 +6,7 @@ # imageRegistry: myRegistryName # imagePullSecrets: # - myRegistryKeySecretName +# storageClass: myStorageClass ## Use an alternate scheduler, e.g. "stork". ## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/ diff --git a/stable/mariadb/values.yaml b/stable/mariadb/values.yaml index 54ff39d368..94725d51a8 100644 --- a/stable/mariadb/values.yaml +++ b/stable/mariadb/values.yaml @@ -6,6 +6,7 @@ # imageRegistry: myRegistryName # imagePullSecrets: # - myRegistryKeySecretName +# storageClass: myStorageClass ## Use an alternate scheduler, e.g. "stork". ## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/