summaryrefslogtreecommitdiff
path: root/jenkins-helpers.sh
diff options
context:
space:
mode:
authorMaxim Kuvyrkov <maxim.kuvyrkov@linaro.org>2018-01-22 17:09:34 +0000
committerMaxim Kuvyrkov <maxim.kuvyrkov@linaro.org>2018-01-22 17:09:34 +0000
commitd3817e7a8ea65dbd5ba5bcb11b6ced091487e6e7 (patch)
treeda3330fb605258e7b6e2e2cf60d521648c4f1678 /jenkins-helpers.sh
parent6670c6bf3479e255fb54289e70435716de04a746 (diff)
jenkins-helper.sh: Improve clone_or_update_repo
... to handle branch names. Currently, passing "master" as "ref" parameter will cause "git ls-remote" to output all SHA1s matching refs/heads/**/master. Change-Id: I1bdb682fa9ebbe45f94cc4ca6492e248aa978050
Diffstat (limited to 'jenkins-helpers.sh')
-rw-r--r--jenkins-helpers.sh6
1 files changed, 5 insertions, 1 deletions
diff --git a/jenkins-helpers.sh b/jenkins-helpers.sh
index 51ca7764..1db7a6a1 100644
--- a/jenkins-helpers.sh
+++ b/jenkins-helpers.sh
@@ -180,7 +180,11 @@ clone_or_update_repo ()
# Convert git branch/tag names into SHA1
local sha1
- sha1=$(git ls-remote "$url" "$ref" | cut -f 1)
+ case "$ref" in
+ "refs/"*) try_ref="$ref";;
+ *) try_ref="refs/heads/$ref" ;;
+ esac
+ sha1=$(git ls-remote "$url" "$try_ref" | cut -f 1)
if [ x"$sha1" = x"" ]; then
# If "git ls-remote" can't resolve $ref, then assume it is
# already SHA1.