@@ -654,11 +654,18 @@ delete_cluster_inside_prow_job() {
654
654
# Looks for the deployment as specified by CSI_PROW_DEPLOYMENT and CSI_PROW_KUBERNETES_VERSION
655
655
# in the given directory.
656
656
find_deployment () {
657
- local dir file k8sver
658
- dir= " $1 "
657
+ local dir= " $1 "
658
+ local file
659
659
660
660
# major/minor without release- prefix.
661
- k8sver=" $( echo " ${CSI_PROW_KUBERNETES_VERSION} " | sed -e ' s/\([0-9]*\)\.\([0-9]*\).*/\1.\2/' -e ' s/^release-//' ) "
661
+ local k8sver
662
+ # Ignore: See if you can use ${variable//search/replace} instead.
663
+ # shellcheck disable=SC2001
664
+ k8sver=" $( echo " ${CSI_PROW_KUBERNETES_VERSION} " | sed -e ' s/^release-//' -e ' s/\([0-9]*\)\.\([0-9]*\).*/\1.\2/' ) "
665
+
666
+ # Desired deployment, either specified completely, including version, or derived from other variables.
667
+ local deployment
668
+ deployment=${CSI_PROW_DEPLOYMENT:- kubernetes-${k8sver}${CSI_PROW_DEPLOYMENT_SUFFIX} }
662
669
663
670
# Fixed deployment name? Use it if it exists.
664
671
if [ " ${CSI_PROW_DEPLOYMENT} " ]; then
@@ -668,18 +675,17 @@ find_deployment () {
668
675
return 0
669
676
fi
670
677
671
- # CSI_PROW_DEPLOYMENT=kubernetes-x.yy is handled below with a fallback
672
- # to kubernetes-latest. If it is something else, then fail here.
673
- if ! echo " ${CSI_PROW_DEPLOYMENT} " | grep -q " ^kubernetes-${k8sver} \$ " ; then
674
- return 1
675
- fi
678
+ # CSI_PROW_DEPLOYMENT=kubernetes-x.yy must be mapped to kubernetes-latest
679
+ # as fallback. Same for kubernetes-distributed-x.yy.
676
680
fi
677
681
678
- # Ignore: See if you can use ${variable//search/replace} instead.
679
- # shellcheck disable=SC2001
680
- file=" $dir /kubernetes-${k8sver}${CSI_PROW_DEPLOYMENT_SUFFIX} /deploy.sh"
682
+ file=" $dir /${deployment} /deploy.sh"
681
683
if ! [ -e " $file " ]; then
682
- file=" $dir /kubernetes-latest${CSI_PROW_DEPLOYMENT_SUFFIX} /deploy.sh"
684
+ # Replace the first xx.yy number with "latest", for example
685
+ # kubernetes-1.21-test -> kubernetes-latest-test.
686
+ # Ignore: See if you can use ${variable//search/replace} instead.
687
+ # shellcheck disable=SC2001
688
+ file=" $dir /$( echo " $deployment " | sed -e ' s/[0-9][0-9]*\.[0-9][0-9]*/latest/' ) /deploy.sh"
683
689
if ! [ -e " $file " ]; then
684
690
return 1
685
691
fi
0 commit comments