2
0
mirror of https://github.com/koreader/koreader synced 2024-11-10 01:10:34 +00:00
koreader/.ci/common.sh
2024-06-15 23:02:52 +02:00

34 lines
666 B
Bash
Executable File

#!/usr/bin/env bash
set -e
set -o pipefail
ANSI_RED="\033[31;1m"
# shellcheck disable=SC2034
ANSI_GREEN="\033[32;1m"
ANSI_RESET="\033[0m"
travis_retry() {
local result=0
local count=1
set +e
while [ ${count} -le 3 ]; do
[ ${result} -ne 0 ] && {
echo -e "\n${ANSI_RED}The command \"$*\" failed. Retrying, ${count} of 3.${ANSI_RESET}\n" >&2
}
"$@"
result=$?
[ ${result} -eq 0 ] && break
count=$((count + 1))
sleep 1
done
[ ${count} -gt 3 ] && {
echo -e "\n${ANSI_RED}The command \"$*\" failed 3 times.${ANSI_RESET}\n" >&2
}
set -e
return ${result}
}