Skip to content

Commit

Permalink
prow.sh: fix hostpath driver version check
Browse files Browse the repository at this point in the history
The previous logic failed for canary jobs, those also deploy a recent
driver. Instead of guessing what driver gets installed based on job
parameters, check what really runs in the cluster and base the
decision on that.

We only need to maintain this blacklist for 1.0.x until we replace it
with 1.1.0, then this entire hostpath_supports_block can be removed.
  • Loading branch information
pohly committed Apr 8, 2019
1 parent 31dfaf3 commit f3d1d2d
Showing 1 changed file with 11 additions and 11 deletions.
22 changes: 11 additions & 11 deletions prow.sh
Expand Up @@ -619,18 +619,18 @@ install_sanity () (

# Whether the hostpath driver supports raw block devices depends on which version
# we are testing. It would be much nicer if we could determine that by querying the
# installed driver.
# installed driver's capabilities instead of having to do a version check.
hostpath_supports_block () {
if [ -e "cmd/hostpathplugin" ] && ${CSI_PROW_BUILD_JOB}; then
# The assumption is that if we build the hostpath driver, then it is
# a current version with support.
echo true
return
fi

case "${CSI_PROW_DEPLOYMENT}" in kubernetes-1.13) echo false;; # wasn't supported and probably won't be backported
*) echo true;; # probably all other deployments have a recent driver
esac
local result
result="$(docker exec csi-prow-control-plane docker image ls --format='{{.Repository}} {{.Tag}} {{.ID}}' | grep hostpath | while read -r repo tag id; do
if [ "$tag" == "v1.0.1" ]; then
# Old version because the revision label is missing: didn't have support yet.
echo "false"
return
fi
done)"
# If not set, then it must be a newer driver with support.
echo "${result:-true}"
}
# Captures pod output while running some other command.
Expand Down

0 comments on commit f3d1d2d

Please sign in to comment.