You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: .github/workflows/ci.yaml
+22-1Lines changed: 22 additions & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -464,9 +464,30 @@ jobs:
464
464
run: |
465
465
./scripts/ci/print-versions.sh
466
466
- name: make
467
+
timeout-minutes: 25# may die if rabbitmq fails to start
468
+
env:
469
+
MAX_ATTEMPTS: 3
470
+
RETRY_DELAY: 5
467
471
# use: script -e -c to print colors
468
472
run: |
469
-
script -e -c "make ${TASK}"
473
+
# There is a race in some orequesta integration tests so they tend to fail quite often.
474
+
# To avoid needed to re-run whole workflow in such case, we should try to retry this
475
+
# specific step. This saves us a bunch of time manually re-running the whole workflow.
476
+
# TODO: Try to identify problematic tests (iirc mostly orquesta ones) and only retry /
477
+
# re-run those.
478
+
set +e
479
+
for i in $(seq 1 ${MAX_ATTEMPTS}); do
480
+
echo "Attempt: ${i}/${MAX_ATTEMPTS}"
481
+
482
+
script -e -c "make ${TASK}" && exit 0
483
+
484
+
echo "Command failed, will retry in ${RETRY_DELAY} seconds..."
485
+
sleep ${RETRY_DELAY}
486
+
done
487
+
488
+
set -e
489
+
echo "Failed after ${MAX_ATTEMPTS} attempts, failing the job."
490
+
exit 1
470
491
- name: Codecov
471
492
# NOTE: We only generate and submit coverage report for master and version branches and only when the build succeeds (default on GitHub Actions, this was not the case on Travis so we had to explicitly check success)
0 commit comments