#!/usr/bin/env bash # TBD: # - add parameter to set loop=true, and accept a value for sleep seconds # - allow passing the script a variable for the dir, rather than assuming curr ## Variables ## PROG="$(basename -- "${BASH_SOURCE[0]}")" loop=false DIR="`pwd`" dir="`basename $DIR`" ## Validations ## if [[ "$DIR" != *"MASTER" ]]; then echo "'$DIR' is not labeled as a MASTER. Skipping upload." exit 0 fi ## Main ## new_dir="${dir//MASTER/clone}" echo "`date` - Sending '$dir' to" \ "'$PROD_DATA_USER@$PROD_DATA_HOST:$PROD_DATA_PORT$PROD_DATA_DIR/$new_dir'" sleep=0 while true; do if (( $sleep > 0 )); then echo "Sleeping for '$sleep' seconds..." sleep $sleep fi clone -e "ssh -p $PROD_DATA_PORT" ./ \ $PROD_DATA_USER@$PROD_DATA_HOST:$PROD_DATA_DIR/$new_dir && echo "`date` - Success!" || echo "`date` - Failed!" sleep=30 if [[ "$loop" == false ]]; then break; fi done ## Complete ## echo "`date` - $PROG complete." exit 0