Repository: rook/rook
Pull request #9595 (2022-01-18 11:17:09)

Update ceph csi release 3.5 image and sidecars  (backport #9581)
This is an automatic backport of pull request #9581 done by [Mergify](https://mergify.com).


---


<details>
<summary>Mergify commands and options</summary>

<br />

More conditions and actions can be found in the [documentation](https://docs.mergify.com/).

You can also trigger Mergify actions by commenting on this pull request:

- `@Mergifyio refresh` will re-evaluate the rules
- `@Mergifyio rebase` will rebase this PR on its base branch
- `@Mergifyio update` will merge the base branch into this PR
- `@Mergifyio backport <destination>` will backport this PR on `<destination>` branch

Additionally, on Mergify [dashboard](https://dashboard.mergify.com/) you can:

- look at your merge queues
- generate the Mergify configuration with the config editor.

Finally, you can contact us on https://mergify.com
</details>



Patch:
diff --git a/Documentation/ceph-upgrade.md b/Documentation/ceph-upgrade.md
index ae83f6e40..c18b73ed5 100644
--- a/Documentation/ceph-upgrade.md
+++ b/Documentation/ceph-upgrade.md
@@ -545,10 +545,10 @@ kubectl -n $ROOK_OPERATOR_NAMESPACE edit configmap rook-ceph-operator-config
 The default upstream images are included below, which you can change to your desired images.
 
 ```yaml
-ROOK_CSI_CEPH_IMAGE: "quay.io/cephcsi/cephcsi:v3.4.0"
-ROOK_CSI_REGISTRAR_IMAGE: "k8s.gcr.io/sig-storage/csi-node-driver-registrar:v2.3.0"
-ROOK_CSI_PROVISIONER_IMAGE: "k8s.gcr.io/sig-storage/csi-provisioner:v3.0.0"
-ROOK_CSI_ATTACHER_IMAGE: "k8s.gcr.io/sig-storage/csi-attacher:v3.3.0"
+ROOK_CSI_CEPH_IMAGE: "quay.io/cephcsi/cephcsi:v3.5.0"
+ROOK_CSI_REGISTRAR_IMAGE: "k8s.gcr.io/sig-storage/csi-node-driver-registrar:v2.4.0"
+ROOK_CSI_PROVISIONER_IMAGE: "k8s.gcr.io/sig-storage/csi-provisioner:v3.1.0"
+ROOK_CSI_ATTACHER_IMAGE: "k8s.gcr.io/sig-storage/csi-attacher:v3.4.0"
 ROOK_CSI_RESIZER_IMAGE: "k8s.gcr.io/sig-storage/csi-resizer:v1.3.0"
 ROOK_CSI_SNAPSHOTTER_IMAGE: "k8s.gcr.io/sig-storage/csi-snapshotter:v4.2.0"
 CSI_VOLUME_REPLICATION_IMAGE: "quay.io/csiaddons/volumereplication-operator:v0.1.0"
@@ -570,11 +570,11 @@ kubectl --namespace rook-ceph get pod -o jsonpath='{range .items[*]}{range .spec
 ```
 
 ```
-k8s.gcr.io/sig-storage/csi-attacher:v3.3.0
-k8s.gcr.io/sig-storage/csi-node-driver-registrar:v2.3.0
-k8s.gcr.io/sig-storage/csi-provisioner:v3.0.0
+k8s.gcr.io/sig-storage/csi-attacher:v3.4.0
+k8s.gcr.io/sig-storage/csi-node-driver-registrar:v2.4.0
+k8s.gcr.io/sig-storage/csi-provisioner:v3.1.0
 k8s.gcr.io/sig-storage/csi-resizer:v1.3.0
 k8s.gcr.io/sig-storage/csi-snapshotter:v4.2.0
-quay.io/cephcsi/cephcsi:v3.4.0
+quay.io/cephcsi/cephcsi:v3.5.0
 quay.io/csiaddons/volumereplication-operator:v0.1.0
 ```
diff --git a/Documentation/helm-operator.md b/Documentation/helm-operator.md
index 644e327de..76d51a4ce 100644
--- a/Documentation/helm-operator.md
+++ b/Documentation/helm-operator.md
@@ -133,14 +133,14 @@ The following tables lists the configurable parameters of the rook-operator char
 | `csi.rbdLivenessMetricsPort`        | Ceph CSI RBD driver metrics port.                                                                                           | `8080`                                                    |
 | `csi.forceCephFSKernelClient`       | Enable Ceph Kernel clients on kernel < 4.17 which support quotas for Cephfs.                                                | `true`                                                    |
 | `csi.kubeletDirPath`                | Kubelet root directory path (if the Kubelet uses a different path for the `--root-dir` flag)                                | `/var/lib/kubelet`                                        |
-| `csi.cephcsi.image`                 | Ceph CSI image.                                                                                                             | `quay.io/cephcsi/cephcsi:v3.4.0`                          |
+| `csi.cephcsi.image`                 | Ceph CSI image.                                                                                                             | `quay.io/cephcsi/cephcsi:v3.5.0`                          |
 | `csi.rbdPluginUpdateStrategy`       | CSI Rbd plugin daemonset update strategy, supported values are OnDelete and RollingUpdate.                                  | `OnDelete`                                                |
 | `csi.cephFSPluginUpdateStrategy`    | CSI CephFS plugin daemonset update strategy, supported values are OnDelete and RollingUpdate.                               | `OnDelete`                                                |
-| `csi.registrar.image`               | Kubernetes CSI registrar image.                                                                                             | `k8s.gcr.io/sig-storage/csi-node-driver-registrar:v2.3.0` |
+| `csi.registrar.image`               | Kubernetes CSI registrar image.                                                                                             | `k8s.gcr.io/sig-storage/csi-node-driver-registrar:v2.4.0` |
 | `csi.resizer.image`                 | Kubernetes CSI resizer image.                                                                                               | `k8s.gcr.io/sig-storage/csi-resizer:v1.3.0`               |
-| `csi.provisioner.image`             | Kubernetes CSI provisioner image.                                                                                           | `k8s.gcr.io/sig-storage/csi-provisioner:v3.0.0`           |
+| `csi.provisioner.image`             | Kubernetes CSI provisioner image.                                                                                           | `k8s.gcr.io/sig-storage/csi-provisioner:v3.1.0`           |
 | `csi.snapshotter.image`             | Kubernetes CSI snapshotter image.                                                                                           | `k8s.gcr.io/sig-storage/csi-snapshotter:v4.2.0`           |
-| `csi.attacher.image`                | Kubernetes CSI Attacher image.                                                                                              | `k8s.gcr.io/sig-storage/csi-attacher:v3.3.0`              |
+| `csi.attacher.image`                | Kubernetes CSI Attacher image.                                                                                              | `k8s.gcr.io/sig-storage/csi-attacher:v3.4.0`              |
 | `csi.cephfsPodLabels`               | Labels to add to the CSI CephFS Pods.                                                                                       | <none>                                                    |
 | `csi.rbdPodLabels`                  | Labels to add to the CSI RBD Pods.                                                                                          | <none>                                                    |
 | `csi.volumeReplication.enabled`     | Enable Volume Replication.                                                                                                  | `false`                                                   |
diff --git a/deploy/charts/rook-ceph/values.yaml b/deploy/charts/rook-ceph/values.yaml
index 80d42d088..9a27b4a3d 100644
--- a/deploy/charts/rook-ceph/values.yaml
+++ b/deploy/charts/rook-ceph/values.yaml
@@ -275,15 +275,15 @@ csi:
   #rbdLivenessMetricsPort: 9080
   #kubeletDirPath: /var/lib/kubelet
   #cephcsi:
-    #image: quay.io/cephcsi/cephcsi:v3.4.0
+    #image: quay.io/cephcsi/cephcsi:v3.5.0
   #registrar:
-    #image: k8s.gcr.io/sig-storage/csi-node-driver-registrar:v2.3.0
+    #image: k8s.gcr.io/sig-storage/csi-node-driver-registrar:v2.4.0
   #provisioner:
-    #image: k8s.gcr.io/sig-storage/csi-provisioner:v3.0.0
+    #image: k8s.gcr.io/sig-storage/csi-provisioner:v3.1.0
   #snapshotter:
     #image: k8s.gcr.io/sig-storage/csi-snapshotter:v4.2.0
   #attacher:
-    #image: k8s.gcr.io/sig-storage/csi-attacher:v3.3.0
+    #image: k8s.gcr.io/sig-storage/csi-attacher:v3.4.0
   #resizer:
     #image: k8s.gcr.io/sig-storage/csi-resizer:v1.3.0
   # Labels to add to the CSI CephFS Deployments and DaemonSets Pods.
diff --git a/deploy/examples/images.txt b/deploy/examples/images.txt
index fe291c5a0..d6b85566d 100644
--- a/deploy/examples/images.txt
+++ b/deploy/examples/images.txt
@@ -1,9 +1,9 @@
- k8s.gcr.io/sig-storage/csi-attacher:v3.3.0
- k8s.gcr.io/sig-storage/csi-node-driver-registrar:v2.3.0
- k8s.gcr.io/sig-storage/csi-provisioner:v3.0.0
+ k8s.gcr.io/sig-storage/csi-attacher:v3.4.0
+ k8s.gcr.io/sig-storage/csi-node-driver-registrar:v2.4.0
+ k8s.gcr.io/sig-storage/csi-provisioner:v3.1.0
  k8s.gcr.io/sig-storage/csi-resizer:v1.3.0
  k8s.gcr.io/sig-storage/csi-snapshotter:v4.2.0
  quay.io/ceph/ceph:v16.2.7
- quay.io/cephcsi/cephcsi:v3.4.0
+ quay.io/cephcsi/cephcsi:v3.5.0
  quay.io/csiaddons/volumereplication-operator:v0.1.0
  rook/ceph:v1.8.2
diff --git a/deploy/examples/operator-openshift.yaml b/deploy/examples/operator-openshift.yaml
index 4b51cca36..9f81c1ca1 100644
--- a/deploy/examples/operator-openshift.yaml
+++ b/deploy/examples/operator-openshift.yaml
@@ -161,12 +161,12 @@ data:
   # The default version of CSI supported by Rook will be started. To change the version
   # of the CSI driver to something other than what is officially supported, change
   # these images to the desired release of the CSI driver.
-  # ROOK_CSI_CEPH_IMAGE: "quay.io/cephcsi/cephcsi:v3.4.0"
-  # ROOK_CSI_REGISTRAR_IMAGE: "k8s.gcr.io/sig-storage/csi-node-driver-registrar:v2.3.0"
+  # ROOK_CSI_CEPH_IMAGE: "quay.io/cephcsi/cephcsi:v3.5.0"
+  # ROOK_CSI_REGISTRAR_IMAGE: "k8s.gcr.io/sig-storage/csi-node-driver-registrar:v2.4.0"
   # ROOK_CSI_RESIZER_IMAGE: "k8s.gcr.io/sig-storage/csi-resizer:v1.3.0"
-  # ROOK_CSI_PROVISIONER_IMAGE: "k8s.gcr.io/sig-storage/csi-provisioner:v3.0.0"
+  # ROOK_CSI_PROVISIONER_IMAGE: "k8s.gcr.io/sig-storage/csi-provisioner:v3.1.0"
   # ROOK_CSI_SNAPSHOTTER_IMAGE: "k8s.gcr.io/sig-storage/csi-snapshotter:v4.2.0"
-  # ROOK_CSI_ATTACHER_IMAGE: "k8s.gcr.io/sig-storage/csi-attacher:v3.3.0"
+  # ROOK_CSI_ATTACHER_IMAGE: "k8s.gcr.io/sig-storage/csi-attacher:v3.4.0"
 
   # (Optional) set user created priorityclassName for csi plugin pods.
   # CSI_PLUGIN_PRIORITY_CLASSNAME: "system-node-critical"
diff --git a/deploy/examples/operator.yaml b/deploy/examples/operator.yaml
index fdff42141..43ecb21bd 100644
--- a/deploy/examples/operator.yaml
+++ b/deploy/examples/operator.yaml
@@ -79,12 +79,12 @@ data:
   # The default version of CSI supported by Rook will be started. To change the version
   # of the CSI driver to something other than what is officially supported, change
   # these images to the desired release of the CSI driver.
-  # ROOK_CSI_CEPH_IMAGE: "quay.io/cephcsi/cephcsi:v3.4.0"
-  # ROOK_CSI_REGISTRAR_IMAGE: "k8s.gcr.io/sig-storage/csi-node-driver-registrar:v2.3.0"
+  # ROOK_CSI_CEPH_IMAGE: "quay.io/cephcsi/cephcsi:v3.5.0"
+  # ROOK_CSI_REGISTRAR_IMAGE: "k8s.gcr.io/sig-storage/csi-node-driver-registrar:v2.4.0"
   # ROOK_CSI_RESIZER_IMAGE: "k8s.gcr.io/sig-storage/csi-resizer:v1.3.0"
-  # ROOK_CSI_PROVISIONER_IMAGE: "k8s.gcr.io/sig-storage/csi-provisioner:v3.0.0"
+  # ROOK_CSI_PROVISIONER_IMAGE: "k8s.gcr.io/sig-storage/csi-provisioner:v3.1.0"
   # ROOK_CSI_SNAPSHOTTER_IMAGE: "k8s.gcr.io/sig-storage/csi-snapshotter:v4.2.0"
-  # ROOK_CSI_ATTACHER_IMAGE: "k8s.gcr.io/sig-storage/csi-attacher:v3.3.0"
+  # ROOK_CSI_ATTACHER_IMAGE: "k8s.gcr.io/sig-storage/csi-attacher:v3.4.0"
 
   # (Optional) set user created priorityclassName for csi plugin pods.
   # CSI_PLUGIN_PRIORITY_CLASSNAME: "system-node-critical"
diff --git a/pkg/operator/ceph/csi/spec.go b/pkg/operator/ceph/csi/spec.go
index 30a20b6e3..47d62f7e9 100644
--- a/pkg/operator/ceph/csi/spec.go
+++ b/pkg/operator/ceph/csi/spec.go
@@ -98,10 +98,10 @@ var (
 // manually challenging.
 var (
 	// image names
-	DefaultCSIPluginImage         = "quay.io/cephcsi/cephcsi:v3.4.0"
-	DefaultRegistrarImage         = "k8s.gcr.io/sig-storage/csi-node-driver-registrar:v2.3.0"
-	DefaultProvisionerImage       = "k8s.gcr.io/sig-storage/csi-provisioner:v3.0.0"
-	DefaultAttacherImage          = "k8s.gcr.io/sig-storage/csi-attacher:v3.3.0"
+	DefaultCSIPluginImage         = "quay.io/cephcsi/cephcsi:v3.5.0"
+	DefaultRegistrarImage         = "k8s.gcr.io/sig-storage/csi-node-driver-registrar:v2.4.0"
+	DefaultProvisionerImage       = "k8s.gcr.io/sig-storage/csi-provisioner:v3.1.0"
+	DefaultAttacherImage          = "k8s.gcr.io/sig-storage/csi-attacher:v3.4.0"
 	DefaultSnapshotterImage       = "k8s.gcr.io/sig-storage/csi-snapshotter:v4.2.0"
 	DefaultResizerImage           = "k8s.gcr.io/sig-storage/csi-resizer:v1.3.0"
 	DefaultVolumeReplicationImage = "quay.io/csiaddons/volumereplication-operator:v0.1.0"
diff --git a/pkg/operator/ceph/csi/version.go b/pkg/operator/ceph/csi/version.go
index bcc8166b3..c8e059610 100644
--- a/pkg/operator/ceph/csi/version.go
+++ b/pkg/operator/ceph/csi/version.go
@@ -25,15 +25,15 @@ import (
 )
 
 var (
-	//minimum supported version is 3.3.0
-	minimum = CephCSIVersion{3, 3, 0}
+	//minimum supported version is 3.4.0
+	minimum = CephCSIVersion{3, 4, 0}
 	//supportedCSIVersions are versions that rook supports
-	releasev330          = CephCSIVersion{3, 3, 0}
 	releasev340          = CephCSIVersion{3, 4, 0}
+	releasev350          = CephCSIVersion{3, 5, 0}
 	supportedCSIVersions = []CephCSIVersion{
 		minimum,
-		releasev330,
 		releasev340,
+		releasev350,
 	}
 	// for parsing the output of `cephcsi`
 	versionCSIPattern = regexp.MustCompile(`v(\d+)\.(\d+)\.(\d+)`)


Test patch:
diff --git a/pkg/operator/ceph/csi/version_test.go b/pkg/operator/ceph/csi/version_test.go
index c69ae0c4c..2cca86b9f 100644
--- a/pkg/operator/ceph/csi/version_test.go
+++ b/pkg/operator/ceph/csi/version_test.go
@@ -23,9 +23,9 @@ import (
 )
 
 var (
-	testMinVersion         = CephCSIVersion{3, 3, 0}
-	testReleaseV330        = CephCSIVersion{3, 3, 0}
+	testMinVersion         = CephCSIVersion{3, 4, 0}
 	testReleaseV340        = CephCSIVersion{3, 4, 0}
+	testReleaseV350        = CephCSIVersion{3, 5, 0}
 	testVersionUnsupported = CephCSIVersion{4, 0, 0}
 )
 
@@ -40,12 +40,12 @@ func TestIsAtLeast(t *testing.T) {
 	assert.Equal(t, true, ret)
 
 	// Test version which is equal
-	ret = testReleaseV330.isAtLeast(&testReleaseV330)
+	ret = testReleaseV340.isAtLeast(&testReleaseV340)
 	assert.Equal(t, true, ret)
 
-	// Test for 3.4.0
+	// Test for 3.5.0
 	// Test version which is lesser
-	ret = testReleaseV340.isAtLeast(&testReleaseV330)
+	ret = testReleaseV350.isAtLeast(&testReleaseV340)
 	assert.Equal(t, true, ret)
 
 }
@@ -58,10 +58,10 @@ func TestSupported(t *testing.T) {
 	ret = testVersionUnsupported.Supported()
 	assert.Equal(t, false, ret)
 
-	ret = testReleaseV330.Supported()
+	ret = testReleaseV340.Supported()
 	assert.Equal(t, true, ret)
 
-	ret = testReleaseV340.Supported()
+	ret = testReleaseV350.Supported()
 	assert.Equal(t, true, ret)
 }