1
Fork 0
mirror of https://github.com/RGBCube/uutils-coreutils synced 2025-07-27 11:07:44 +00:00

workaround: run builds with retry (a)

This commit is contained in:
Ulrich Hornung 2024-02-17 19:16:47 +01:00
parent d7a09c042a
commit 263a16317b
2 changed files with 40 additions and 3 deletions

View file

@ -482,6 +482,22 @@ generate_and_install_public_key() {
echo "installed ssh public key on device"
}
run_with_retry() {
tries=$1
shift 1
for i in $(seq 1 $tries); do
echo "Try #$i of $tries: run $*"
"$@" && echo "Done in try#$i" && return 0
done
exit_code=$?
echo "Still failing after $tries. Code: $exit_code"
return $exit_code
}
snapshot() {
apk="$1"
echo "Running snapshot"
@ -500,7 +516,8 @@ snapshot() {
echo "Installing cargo-nextest"
# We need to install nextest via cargo currently, since there is no pre-built binary for android x86
run_command_via_ssh "export CARGO_TERM_COLOR=always && cargo install cargo-nextest"
command="export CARGO_TERM_COLOR=always && cargo install cargo-nextest"
run_with_retry 3 run_command_via_ssh "$command"
return_code=$?
echo "Info about cargo and rust - via SSH Script"
@ -562,7 +579,7 @@ build() {
command="export CARGO_TERM_COLOR=always;
export CARGO_INCREMENTAL=0; \
cd ~/coreutils && cargo build --features feat_os_unix_android"
run_command_via_ssh "$command" || return
run_with_retry 3 run_command_via_ssh "$command" || return
echo "Finished build"
}