@@ -713,10 +713,11 @@ install_snapshot_controller() {
713
713
714
714
kubectl apply -f " https://raw.githubusercontent.com/kubernetes-csi/external-snapshotter/${CSI_SNAPSHOTTER_VERSION} /deploy/kubernetes/snapshot-controller/setup-snapshot-controller.yaml"
715
715
cnt=0
716
- until kubectl get statefulset snapshot-controller | grep snapshot-controller | grep " 1/1" ; do
716
+ expected_running_pods=$( curl https://raw.githubusercontent.com/kubernetes-csi/external-snapshotter/" ${CSI_SNAPSHOTTER_VERSION} " /deploy/kubernetes/snapshot-controller/setup-snapshot-controller.yaml | grep replicas | cut -d ' :' -f 2-)
717
+ while [ " $( kubectl get pods -l app=snapshot-controller | grep ' Running' -c) " -lt " $expected_running_pods " ]; do
717
718
if [ $cnt -gt 30 ]; then
718
- echo " Running statefulsets :"
719
- kubectl describe statefulsets
719
+ echo " snapshot-controller pod status :"
720
+ kubectl describe pods -l app=snapshot-controller
720
721
echo >&2 " ERROR: snapshot controller not ready after over 5 min"
721
722
exit 1
722
723
fi
@@ -996,8 +997,30 @@ make_test_to_junit () {
996
997
fi
997
998
}
998
999
1000
+ # version_gt returns true if arg1 is greater than arg2.
1001
+ #
1002
+ # This function expects versions to be one of the following formats:
1003
+ # X.Y.Z, release-X.Y.Z, vX.Y.Z
1004
+ #
1005
+ # where X,Y, and Z are any number.
1006
+ #
1007
+ # Partial versions (1.2, release-1.2) work as well.
1008
+ # The follow substrings are stripped before version comparison:
1009
+ # - "v"
1010
+ # - "release-"
1011
+ #
1012
+ # Usage:
1013
+ # version_gt release-1.3 v1.2.0 (returns true)
1014
+ # version_gt v1.1.1 v1.2.0 (returns false)
1015
+ # version_gt 1.1.1 v1.2.0 (returns false)
1016
+ # version_gt 1.3.1 v1.2.0 (returns true)
1017
+ # version_gt 1.1.1 release-1.2.0 (returns false)
1018
+ # version_gt 1.2.0 1.2.2 (returns false)
999
1019
function version_gt() {
1000
- test " $( printf ' %s\n' " $@ " | sort -V | head -n 1) " ! = " $1 " ;
1020
+ versions=$( for ver in " $@ " ; do ver=${ver# release-} ; echo " ${ver# v} " ; done)
1021
+ greaterVersion=${1# " release-" } ;
1022
+ greaterVersion=${greaterVersion# " v" } ;
1023
+ test " $( printf ' %s' " $versions " | sort -V | head -n 1) " ! = " $greaterVersion "
1001
1024
}
1002
1025
1003
1026
main () {
0 commit comments