Browse Source

fix git_timed retry logic

git_timed retry logic actually only retried *if* we timed out, not if
the command itself failed, as it would explicitly exit if the return
code was anything except 124. This loops in all failure cases, which
was the intent of the original fix.

Related-Bug: #1282876

Change-Id: I576df4832665beb21992ffa873da28a198018530
tags/before-jenkins-config-removed
Sean Dague 4 years ago
parent
commit
8039e854aa
1 changed files with 1 additions and 8 deletions
  1. +1
    -8
      jenkins/scripts/gerrit-git-prep.sh

+ 1
- 8
jenkins/scripts/gerrit-git-prep.sh View File

@@ -19,14 +19,7 @@ function git_timed {
fi

until timeout -s SIGINT ${timeout} git "$@"; do
# 124 is timeout(1)'s special return code when it reached the
# timeout; otherwise assume fatal failure
if [[ $? -ne 124 ]]; then
exitcode=$?
echo $LINENO "git call failed: [git $@]"
exit $exitcode
fi

echo "Command exited with '$?' [git $@] ... retrying"
count=$(($count + 1))
echo "timeout ${count} for git call: [git $@]"
if [ $count -eq 3 ]; then

Loading…
Cancel
Save