From 943638530588c28de96bfa44aedd12aa7e571ae4 Mon Sep 17 00:00:00 2001 From: Jose Quaresma Date: Fri, 15 Nov 2024 16:08:19 +0000 Subject: [PATCH] helpers: repo_sync: don't use the operator && Because we run the script with set -e Any return value other than 0 causes the process to abort. Using the operator && causes the script to abort because when the command fails there is no path to follow. If we use the if clause operator we solve the problem. Signed-off-by: Jose Quaresma --- helpers.sh | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/helpers.sh b/helpers.sh index b001f246..9dcc1288 100644 --- a/helpers.sh +++ b/helpers.sh @@ -76,16 +76,22 @@ function repo_sync { fi _repo_extra_args="" for i in $(seq 4); do - run repo init $_repo_extra_args --repo-rev=v2.35 --no-clone-bundle -u $* ${REPO_INIT_OVERRIDES} && break + if run repo init $_repo_extra_args --repo-rev=v2.35 --no-clone-bundle -u $* ${REPO_INIT_OVERRIDES}; then + break + fi _repo_extra_args="--verbose" status "repo init failed with error $?" - [ $i -eq 4 ] && exit 1 + if [ $i -eq 4 ]; then + exit 1 + fi status "sleeping and trying again" sleep $(($i*2)) done _repo_extra_args="" for i in $(seq 4); do - run timeout 4m repo sync $_repo_extra_args && break + if run timeout 4m repo sync $_repo_extra_args; then + break + fi _repo_extra_args="--verbose" if [ $? -eq 124 ] ; then msg="Command timed out"