diff --git a/deployment/scripts/clusters.cron-backups.sh b/deployment/scripts/clusters.cron-backups.sh new file mode 100755 index 000000000..6d41eb9cf --- /dev/null +++ b/deployment/scripts/clusters.cron-backups.sh @@ -0,0 +1,38 @@ +#!/bin/bash + +# base setup +SCRIPT_PATH=$(realpath $0) +SCRIPT_DIR=$(dirname $SCRIPT_PATH) + +# check BACKUP_CONFIGURATIONS +if [ -z ${BACKUP_CONFIGURATIONS} ]; then + echo "You must provide a `BACKUP_CONFIGURATIONS` via environment variable" + exit 1 +fi + +# convert configurations to array +CONFIGURATIONS_ARRAY=($BACKUP_CONFIGURATIONS) + +# display the clusters +echo "Backup the clusters:" +for i in "${CONFIGURATIONS_ARRAY[@]}" +do + echo $i +done +echo "Cancel by ^C. You have 20 seconds" +# wait for the admin to react +sleep 20 + +# save old CONFIGURATION for later reset +SAVE_CONFIGURATION=$CONFIGURATION + +for i in "${CONFIGURATIONS_ARRAY[@]}" +do + CONFIGURATION=$i + # individual cluster backup + ${SCRIPT_DIR}/cluster.backup.sh +done + +# reset CONFIGURATION to old +CONFIGURATION=$SAVE_CONFIGURATION +echo "Reset to CONFIGURATION=${CONFIGURATION}"