From 49eaa74bfe7eb379b6088798a99605756507a665 Mon Sep 17 00:00:00 2001 From: Ivan Kurnosov Date: Wed, 12 Feb 2020 23:08:52 +1300 Subject: [PATCH] [stable/redis] added PV selectors (#20652) Signed-off-by: Ivan Kurnosov --- stable/redis/Chart.yaml | 2 +- stable/redis/README.md | 4 ++++ .../templates/redis-master-statefulset.yaml | 9 +++++++++ .../redis/templates/redis-slave-statefulset.yaml | 9 +++++++++ stable/redis/values-production.yaml | 8 ++++++++ stable/redis/values.schema.json | 16 ++++++++++++++++ stable/redis/values.yaml | 8 ++++++++ 7 files changed, 55 insertions(+), 1 deletion(-) mode change 100644 => 100755 stable/redis/templates/redis-master-statefulset.yaml mode change 100644 => 100755 stable/redis/templates/redis-slave-statefulset.yaml diff --git a/stable/redis/Chart.yaml b/stable/redis/Chart.yaml index 47944e2242..401d8ee768 100644 --- a/stable/redis/Chart.yaml +++ b/stable/redis/Chart.yaml @@ -1,6 +1,6 @@ apiVersion: v1 name: redis -version: 10.4.4 +version: 10.5.0 appVersion: 5.0.7 description: Open source, advanced key-value store. It is often referred to as a data structure server since keys can contain strings, hashes, lists, sets and sorted sets. keywords: diff --git a/stable/redis/README.md b/stable/redis/README.md index ee60a01eb3..743b976ce3 100644 --- a/stable/redis/README.md +++ b/stable/redis/README.md @@ -118,6 +118,8 @@ The following table lists the configurable parameters of the Redis chart and the | `master.persistence.storageClass` | Storage class of backing PVC | `generic` | | `master.persistence.accessModes` | Persistent Volume Access Modes | `[ReadWriteOnce]` | | `master.persistence.size` | Size of data volume | `8Gi` | +| `master.persistence.matchLabels` | matchLabels persistent volume selector | `{}` | +| `master.persistence.matchExpressions` | matchExpressions persistent volume selector | `{}` | | `master.statefulset.updateStrategy` | Update strategy for StatefulSet | onDelete | | `master.statefulset.rollingUpdatePartition` | Partition update strategy | `nil` | | `master.podLabels` | Additional labels for Redis master pod | {} | @@ -187,6 +189,8 @@ The following table lists the configurable parameters of the Redis chart and the | `slave.persistence.storageClass` | Storage class of backing PVC | `generic` | | `slave.persistence.accessModes` | Persistent Volume Access Modes | `[ReadWriteOnce]` | | `slave.persistence.size` | Size of data volume | `8Gi` | +| `slave.persistence.matchLabels` | matchLabels persistent volume selector | `{}` | +| `slave.persistence.matchExpressions` | matchExpressions persistent volume selector | `{}` | | `slave.statefulset.updateStrategy` | Update strategy for StatefulSet | onDelete | | `slave.statefulset.rollingUpdatePartition` | Partition update strategy | `nil` | | `slave.podLabels` | Additional labels for Redis slave pod | `master.podLabels` | diff --git a/stable/redis/templates/redis-master-statefulset.yaml b/stable/redis/templates/redis-master-statefulset.yaml old mode 100644 new mode 100755 index 3c2f183d27..b61c5391da --- a/stable/redis/templates/redis-master-statefulset.yaml +++ b/stable/redis/templates/redis-master-statefulset.yaml @@ -397,6 +397,15 @@ spec: requests: storage: {{ .Values.master.persistence.size | quote }} {{ include "redis.master.storageClass" . }} + selector: + {{- if .Values.master.persistence.matchLabels }} + matchLabels: +{{ toYaml .Values.master.persistence.matchLabels | indent 12 }} + {{- end -}} + {{- if .Values.master.persistence.matchExpressions }} + matchExpressions: +{{ toYaml .Values.master.persistence.matchExpressions | indent 12 }} + {{- end -}} {{- end }} updateStrategy: type: {{ .Values.master.statefulset.updateStrategy }} diff --git a/stable/redis/templates/redis-slave-statefulset.yaml b/stable/redis/templates/redis-slave-statefulset.yaml old mode 100644 new mode 100755 index f28c545238..d5a8db5615 --- a/stable/redis/templates/redis-slave-statefulset.yaml +++ b/stable/redis/templates/redis-slave-statefulset.yaml @@ -414,6 +414,15 @@ spec: requests: storage: {{ .Values.slave.persistence.size | quote }} {{ include "redis.slave.storageClass" . }} + selector: + {{- if .Values.slave.persistence.matchLabels }} + matchLabels: +{{ toYaml .Values.slave.persistence.matchLabels | indent 12 }} + {{- end -}} + {{- if .Values.slave.persistence.matchExpressions }} + matchExpressions: +{{ toYaml .Values.slave.persistence.matchExpressions | indent 12 }} + {{- end -}} {{- end }} updateStrategy: type: {{ .Values.slave.statefulset.updateStrategy }} diff --git a/stable/redis/values-production.yaml b/stable/redis/values-production.yaml index 97f3ccb732..cb5a785178 100644 --- a/stable/redis/values-production.yaml +++ b/stable/redis/values-production.yaml @@ -335,6 +335,10 @@ master: accessModes: - ReadWriteOnce size: 8Gi + ## Persistent Volume selectors + ## https://kubernetes.io/docs/concepts/storage/persistent-volumes/#selector + matchLabels: {} + matchExpressions: {} ## Update strategy, can be set to RollingUpdate or onDelete by default. ## https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/#updating-statefulsets @@ -455,6 +459,10 @@ slave: accessModes: - ReadWriteOnce size: 8Gi + ## Persistent Volume selectors + ## https://kubernetes.io/docs/concepts/storage/persistent-volumes/#selector + matchLabels: {} + matchExpressions: {} ## Update strategy, can be set to RollingUpdate or onDelete by default. ## https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/#updating-statefulsets diff --git a/stable/redis/values.schema.json b/stable/redis/values.schema.json index 0c910117ba..2138e451e4 100644 --- a/stable/redis/values.schema.json +++ b/stable/redis/values.schema.json @@ -67,6 +67,14 @@ "condition": false, "value": "master.persistence.enabled" } + }, + "matchLabels": { + "type": "object", + "title": "Persistent Match Labels Selector" + }, + "matchExpressions": { + "type": "object", + "title": "Persistent Match Expressions Selector" } } } @@ -104,6 +112,14 @@ "condition": false, "value": "slave.persistence.enabled" } + }, + "matchLabels": { + "type": "object", + "title": "Persistent Match Labels Selector" + }, + "matchExpressions": { + "type": "object", + "title": "Persistent Match Expressions Selector" } } } diff --git a/stable/redis/values.yaml b/stable/redis/values.yaml index e6926f5d8d..67d37ce73b 100644 --- a/stable/redis/values.yaml +++ b/stable/redis/values.yaml @@ -335,6 +335,10 @@ master: accessModes: - ReadWriteOnce size: 8Gi + ## Persistent Volume selectors + ## https://kubernetes.io/docs/concepts/storage/persistent-volumes/#selector + matchLabels: {} + matchExpressions: {} ## Update strategy, can be set to RollingUpdate or onDelete by default. ## https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/#updating-statefulsets @@ -455,6 +459,10 @@ slave: accessModes: - ReadWriteOnce size: 8Gi + ## Persistent Volume selectors + ## https://kubernetes.io/docs/concepts/storage/persistent-volumes/#selector + matchLabels: {} + matchExpressions: {} ## Update strategy, can be set to RollingUpdate or onDelete by default. ## https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/#updating-statefulsets