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