@@ -93,7 +93,10 @@ configvar CSI_PROW_GO_VERSION_KIND "${CSI_PROW_GO_VERSION_BUILD}" "Go version fo
9393configvar CSI_PROW_GO_VERSION_GINKGO " ${CSI_PROW_GO_VERSION_BUILD} " " Go version for building ginkgo" #  depends on CSI_PROW_GINKGO_VERSION below
9494
9595#  ginkgo test runner version to use. If the pre-installed version is
96- #  different, the desired version is built from source.
96+ #  different, the desired version is built from source. For Kubernetes,
97+ #  the version built via "make WHAT=vendor/github.com/onsi/ginkgo/ginkgo" is
98+ #  used, which is guaranteed to match what the Kubernetes e2e.test binary
99+ #  needs.
97100configvar CSI_PROW_GINKGO_VERSION v1.7.0 " Ginkgo" 
98101
99102#  Ginkgo runs the E2E test in parallel. The default is based on the number
@@ -196,7 +199,7 @@ kindest/node:v1.14.10@sha256:f8a66ef82822ab4f7569e91a5bccaf27bceee135c1457c512e5
196199#  If the deployment script is called with CSI_PROW_TEST_DRIVER=<file name> as
197200#  environment variable, then it must write a suitable test driver configuration
198201#  into that file in addition to installing the driver.
199- configvar CSI_PROW_DRIVER_VERSION " v1.3 .0" " CSI driver version" 
202+ configvar CSI_PROW_DRIVER_VERSION " v1.8 .0" " CSI driver version" 
200203configvar CSI_PROW_DRIVER_REPO https://github.com/kubernetes-csi/csi-driver-host-path " CSI driver repo" 
201204configvar CSI_PROW_DEPLOYMENT " " " deployment" 
202205configvar CSI_PROW_DEPLOYMENT_SUFFIX " " " additional suffix in kubernetes-x.yy[suffix].yaml files" 
@@ -234,7 +237,7 @@ configvar CSI_PROW_E2E_IMPORT_PATH "k8s.io/kubernetes" "E2E package"
234237#  of the cluster. The alternative would have been to (cross-)compile csi-sanity
235238#  and install it inside the cluster, which is not necessarily easier.
236239configvar CSI_PROW_SANITY_REPO https://github.com/kubernetes-csi/csi-test " csi-test repo" 
237- configvar CSI_PROW_SANITY_VERSION v4.3 .0 " csi-test version" 
240+ configvar CSI_PROW_SANITY_VERSION v5.0 .0 " csi-test version" 
238241configvar CSI_PROW_SANITY_PACKAGE_PATH github.com/kubernetes-csi/csi-test " csi-test package" 
239242configvar CSI_PROW_SANITY_SERVICE " hostpath-service" " Kubernetes TCP service name that exposes csi.sock" 
240243configvar CSI_PROW_SANITY_POD " csi-hostpathplugin-0" " Kubernetes pod with CSI driver" 
@@ -346,9 +349,12 @@ configvar CSI_PROW_E2E_ALPHA "$(get_versioned_variable CSI_PROW_E2E_ALPHA "${csi
346349#  kubernetes-csi components must be updated, either by disabling
347350#  the failing test for "latest" or by updating the test and not running
348351#  it anymore for older releases.
349- configvar CSI_PROW_E2E_ALPHA_GATES_LATEST ' GenericEphemeralVolume=true,CSIStorageCapacity=true ' " alpha feature gates for latest Kubernetes" 
352+ configvar CSI_PROW_E2E_ALPHA_GATES_LATEST ' ' " alpha feature gates for latest Kubernetes" 
350353configvar CSI_PROW_E2E_ALPHA_GATES " $( get_versioned_variable CSI_PROW_E2E_ALPHA_GATES " ${csi_prow_kubernetes_version_suffix} " ) " " alpha E2E feature gates" 
351354
355+ configvar CSI_PROW_E2E_GATES_LATEST ' ' " non alpha feature gates for latest Kubernetes" 
356+ configvar CSI_PROW_E2E_GATES " $( get_versioned_variable CSI_PROW_E2E_GATES " ${csi_prow_kubernetes_version_suffix} " ) " " non alpha E2E feature gates" 
357+ 
352358#  Which external-snapshotter tag to use for the snapshotter CRD and snapshot-controller deployment
353359default_csi_snapshotter_version  () {
354360	if  [ " ${CSI_PROW_KUBERNETES_VERSION} " =  " latest" ||  [ " ${CSI_PROW_DRIVER_CANARY} " =  " canary" ;  then 
@@ -437,6 +443,10 @@ install_kind () {
437443
438444#  Ensure that we have the desired version of the ginkgo test runner.
439445install_ginkgo  () {
446+     if  [ -e  " ${CSI_PROW_BIN} /ginkgo" ;  then 
447+         return 
448+     fi 
449+ 
440450    #  CSI_PROW_GINKGO_VERSION contains the tag with v prefix, the command line output does not.
441451    if  [ " v$( ginkgo version 2> /dev/null |  sed -e ' s/.* //' ) " =  " ${CSI_PROW_GINKGO_VERSION} " ;  then 
442452        return 
@@ -940,7 +950,9 @@ install_e2e () {
940950        patch_kubernetes " ${GOPATH} /src/${CSI_PROW_E2E_IMPORT_PATH} " " ${CSI_PROW_WORK} " &&  
941951        go_version=" ${CSI_PROW_GO_VERSION_E2E:- $(go_version_for_kubernetes " ${GOPATH} /src/${CSI_PROW_E2E_IMPORT_PATH} " " ${CSI_PROW_E2E_VERSION} "  " &&  
942952        run_with_go " $go_version " " -C${GOPATH} /src/${CSI_PROW_E2E_IMPORT_PATH} " &&  
943-         ln -s " ${GOPATH} /src/${CSI_PROW_E2E_IMPORT_PATH} /_output/bin/e2e.test" " ${CSI_PROW_WORK} "  
953+         ln -s " ${GOPATH} /src/${CSI_PROW_E2E_IMPORT_PATH} /_output/bin/e2e.test" " ${CSI_PROW_WORK} " &&  
954+         run_with_go " $go_version " " -C${GOPATH} /src/${CSI_PROW_E2E_IMPORT_PATH} " &&  
955+         ln -s " ${GOPATH} /src/${CSI_PROW_E2E_IMPORT_PATH} /_output/bin/ginkgo" " ${CSI_PROW_BIN} "  
944956    else  
945957        run_with_go " ${CSI_PROW_GO_VERSION_E2E} " test  -c -o " ${CSI_PROW_WORK} /e2e.test" " ${CSI_PROW_E2E_IMPORT_PATH} /test/e2e"  
946958    fi  
@@ -1254,7 +1266,8 @@ main () {
12541266        fi  
12551267
12561268        if  tests_need_non_alpha_cluster;  then  
1257-             start_cluster ||  die " starting the non-alpha cluster failed"  
1269+             #  Need to (re)create the cluster. 
1270+             start_cluster " ${CSI_PROW_E2E_GATES} " ||  die " starting the non-alpha cluster failed"  
12581271
12591272            #  Install necessary snapshot CRDs and snapshot controller 
12601273            install_snapshot_crds 
@@ -1304,7 +1317,11 @@ main () {
13041317            delete_cluster_inside_prow_job non-alpha 
13051318        fi  
13061319
1307-         if  tests_need_alpha_cluster &&  [ " ${CSI_PROW_E2E_ALPHA_GATES} " ;  then  
1320+         #  If the cluster for alpha tests doesn't need any feature gates, then we 
1321+         #  could reuse the same cluster as for the other tests. But that would make 
1322+         #  the flow in this script harder and wouldn't help in practice because 
1323+         #  we have separate Prow jobs for alpha and non-alpha tests. 
1324+         if  tests_need_alpha_cluster;  then  
13081325            #  Need to (re)create the cluster. 
13091326            start_cluster " ${CSI_PROW_E2E_ALPHA_GATES} " ||  die " starting alpha cluster failed"  
13101327
0 commit comments