Files
angular__angular/scripts/retry-call.sh
T

26 lines
756 B
Bash
Raw Normal View History

#!/bin/bash
# Function that can be used to re-call a specific command a specific amount of times if it fails.
# @param ${1} Amount of retry calls
# @param ${2} Code block that will be invoked
function retryCall() {
retries=0
until [ ${retries} -gt ${1} ]; do
# Call the command and break the loop if it exits without any errors.
(${2}) && return 0
# Increase the counter of the invoked retries.
retries=$[${retries} + 1]
# Sleep a few seconds and log an info message if there are still remaining retries.
if [ ${retries} -le ${1} ]; then
echo "Script didn't exit without errors. Retrying $[${1} - retries + 1] times..."
sleep 1
fi
done
echo "Script exited with errors. Exiting process.."
exit 1
}