Add variable to toggle the servers fallback

This commit is contained in:
Jérémy Lecour 2019-09-23 18:06:00 +02:00 committed by Jérémy Lecour
parent 6b26d7fc53
commit ddba0942e3

View file

@ -23,6 +23,9 @@ MAIL=jdoe@example.com
# list of hosts (hostname or IP) and SSH port for Rsync # list of hosts (hostname or IP) and SSH port for Rsync
SERVERS="node0.backup.example.com:2XXX node1.backup.example.com:2XXX" SERVERS="node0.backup.example.com:2XXX node1.backup.example.com:2XXX"
# Should we fallback on servers when the first is unreachable ?
SERVERS_FALLBACK=${SERVERS_FALLBACK:-1}
# timeout (in seconds) for SSH connections # timeout (in seconds) for SSH connections
SSH_CONNECT_TIMEOUT=30 SSH_CONNECT_TIMEOUT=30
@ -281,17 +284,23 @@ fi
n=0 n=0
server="" server=""
while :; do if [ "${SERVERS_FALLBACK}" = "1" ]; then
server=$(pick_server "${n}") # We try to find a suitable server
test $? = 0 || exit 2 while :; do
server=$(pick_server "${n}")
test $? = 0 || exit 2
if test_server "${server}"; then if test_server "${server}"; then
break break
else else
server="" server=""
n=$(( n + 1 )) n=$(( n + 1 ))
fi fi
done done
else
# we force the server
server=$(pick_server "${n}")
fi
SSH_SERVER=$(echo "${server}" | cut -d':' -f1) SSH_SERVER=$(echo "${server}" | cut -d':' -f1)
SSH_PORT=$(echo "${server}" | cut -d':' -f2) SSH_PORT=$(echo "${server}" | cut -d':' -f2)