|
16 | 16 | - [Alpha -> Beta](#alpha---beta)
|
17 | 17 | - [Beta -> GA](#beta---ga)
|
18 | 18 | - [Test Plan](#test-plan)
|
| 19 | + - [Prerequisite testing updates](#prerequisite-testing-updates) |
| 20 | + - [Unit tests](#unit-tests) |
| 21 | + - [Integration/e2e tests](#integratione2e-tests) |
19 | 22 | - [Per-driver migration testing](#per-driver-migration-testing)
|
20 | 23 | - [Upgrade/Downgrade/Skew Testing](#upgradedowngradeskew-testing)
|
21 | 24 | - [Production Readiness Review Questionnaire](#production-readiness-review-questionnaire)
|
@@ -114,6 +117,63 @@ The detailed design was originally implemented as a [design proposal](https://gi
|
114 | 117 |
|
115 | 118 | ## Test Plan
|
116 | 119 |
|
| 120 | +[x] I/we understand the owners of the involved components may require updates to |
| 121 | +existing tests to make this code solid enough prior to committing the changes necessary |
| 122 | +to implement this enhancement. |
| 123 | + |
| 124 | +### Prerequisite testing updates |
| 125 | + |
| 126 | +To enable CSI Migration, the stability of CSI driver need to be ensured as a pre-requisite. |
| 127 | +Kubernetes sig-storage team created the CSI driver [e2e test suite](https://github.com/kubernetes/kubernetes/tree/master/test/e2e/storage) framework to |
| 128 | +allow each storage provider to run their driver against these tests to ensure functionality of the driver. |
| 129 | + |
| 130 | +In addition, each storage provider should also have their own testing to ensure feature parity between |
| 131 | +the in-tree plugin and the corresponding CSI driver. This is done on a per-driver basis. |
| 132 | + |
| 133 | +### Unit tests |
| 134 | + |
| 135 | +- `k8s.io/kubernetes/staging/src/k8s.io/csi-translation-lib/`: |
| 136 | + - 2022/06/06 - k8s.io/kubernetes/staging/src/k8s.io/csi-translation-lib/translate_test.go |
| 137 | +- `k8s.io/kubernetes/staging/src/k8s.io/csi-translation-lib/plugins`: |
| 138 | + - 2022/06/06 - k8s.io/kubernetes/staging/src/k8s.io/csi-translation-lib/plugins/aws_ebs_test.go |
| 139 | + - 2022/06/06 - k8s.io/kubernetes/staging/src/k8s.io/csi-translation-lib/plugins/azure_disk_test.go |
| 140 | + - 2022/06/06 - k8s.io/kubernetes/staging/src/k8s.io/csi-translation-lib/plugins/azure_file_test.go |
| 141 | + - 2022/06/06 - k8s.io/kubernetes/staging/src/k8s.io/csi-translation-lib/plugins/gce_pd_test.go |
| 142 | + - 2022/06/06 - k8s.io/kubernetes/staging/src/k8s.io/csi-translation-lib/plugins/in_tree_volume_test.go |
| 143 | + - 2022/06/06 - k8s.io/kubernetes/staging/src/k8s.io/csi-translation-lib/plugins/openstack_cinder_test.go |
| 144 | + - 2022/06/06 - k8s.io/kubernetes/staging/src/k8s.io/csi-translation-lib/plugins/portworx_test.go |
| 145 | + - 2022/06/06 - k8s.io/kubernetes/staging/src/k8s.io/csi-translation-lib/plugins/rbd_test.go |
| 146 | + - 2022/06/06 - k8s.io/kubernetes/staging/src/k8s.io/csi-translation-lib/plugins/vsphere_volume_test.go |
| 147 | +- `k8s.io/kubernetes/pkg/volume/csimigration/` |
| 148 | + - 2022/06/06 - k8s.io/kubernetes/pkg/volume/csimigration/plugin_manager_test.go |
| 149 | +- `k8s.io/kubernetes/pkg/scheduler/framework/plugins/nodevolumelimits/csi.go` |
| 150 | + - 2022/06/06 - k8s.io/kubernetes/pkg/scheduler/framework/plugins/nodevolumelimits/csi_test.go |
| 151 | +- `k8s.io/kubernetes/pkg/volume/csi` |
| 152 | + - 2022/06/06 - k8s.io/kubernetes/pkg/volume/csi/csi_attacher_test.go |
| 153 | + - 2022/06/06 - k8s.io/kubernetes/pkg/volume/csi/csi_mounter_test.go |
| 154 | + - 2022/06/06 - k8s.io/kubernetes/pkg/volume/csi/csi_plugin_test.go |
| 155 | +- `pkg/controller/volume/persistentvolume/` |
| 156 | + - 2022/06/06 - pkg/controller/volume/persistentvolume/framework_test.go |
| 157 | + - 2022/06/06 - pkg/controller/volume/persistentvolume/provision_test.go |
| 158 | + - 2022/06/06 - pkg/controller/volume/persistentvolume/pv_controller_test.go |
| 159 | +- `k8s.io/kubernetes/pkg/volume/csi/nodeinfomanager/` |
| 160 | + - 2022/06/06 - k8s.io/kubernetes/pkg/volume/csi/nodeinfomanager/nodeinfomanager_test.go |
| 161 | +- `k8s.io/kubernetes/pkg/controller/volume/attachdetach/` |
| 162 | + - 2022/06/06 - k8s.io/kubernetes/pkg/controller/volume/attachdetach/attach_detach_controller_test.go |
| 163 | +- `sigs.k8s.io/sig-storage-lib-external-provisioner/v8/controller` |
| 164 | + - 2022/06/06 - sigs.k8s.io/sig-storage-lib-external-provisioner/v8/controller/controller_test.go |
| 165 | +- `github.com/kubernetes-csi/external-provisioner/pkg/controller/` |
| 166 | + - 2022/06/06 - github.com/kubernetes-csi/external-provisioner/pkg/controller/controller_test.go |
| 167 | + |
| 168 | +### Integration/e2e tests |
| 169 | + |
| 170 | +- GCE-PD CSI Driver: [testgrid link](https://testgrid.k8s.io/provider-gcp-compute-persistent-disk-csi-driver#Migration%20Kubernetes%20Master%20Driver%20Latest) |
| 171 | +- AWS EBS CSI Driver: [testgrid link](https://testgrid.k8s.io/provider-aws-ebs-csi-driver#ci-migration-test) |
| 172 | +- AzureDisk CSI Driver: [testgrid link](https://testgrid.k8s.io/provider-azure-azuredisk-csi-driver#pr-azuredisk-csi-driver-e2e-migration) |
| 173 | +- AzureDisk CSI Driver on Windows: [testgrid link](https://testgrid.k8s.io/provider-azure-azuredisk-csi-driver#pr-azuredisk-csi-driver-e2e-migration-windows) |
| 174 | +- AzureFile CSI Driver: [testgrid link](https://testgrid.k8s.io/provider-azure-azurefile-csi-driver#pr-azurefile-csi-driver-e2e-migration) |
| 175 | +- AzureFile CSI Driver on Windows: [testgrid link](https://testgrid.k8s.io/provider-azure-azurefile-csi-driver#pr-azurefile-csi-driver-e2e-migration-windows) |
| 176 | + |
117 | 177 | ### Per-driver migration testing
|
118 | 178 |
|
119 | 179 | We will require *each* plugin/driver provider to set up public CI to run all
|
|
0 commit comments