From c496e7232f4e690b0987abfd0cfb952c1b521171 Mon Sep 17 00:00:00 2001 From: Finley Ghosh Date: Wed, 3 Dec 2025 22:37:44 +1100 Subject: [PATCH] Refurbishing db refresher script for local use --- .../restore_db_from_backup.sh | 21 +++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) rename scripts/{archive => util}/restore_db_from_backup.sh (57%) mode change 100644 => 100755 diff --git a/scripts/archive/restore_db_from_backup.sh b/scripts/util/restore_db_from_backup.sh old mode 100644 new mode 100755 similarity index 57% rename from scripts/archive/restore_db_from_backup.sh rename to scripts/util/restore_db_from_backup.sh index 67fa941e..f7593174 --- a/scripts/archive/restore_db_from_backup.sh +++ b/scripts/util/restore_db_from_backup.sh @@ -1,7 +1,7 @@ #!/bin/bash set -e -# Default to staging -TARGET="stg" +# Default to local +TARGET="local" for arg in "$@"; do if [[ "$arg" == "-target" ]]; then NEXT_IS_TARGET=1 @@ -18,21 +18,30 @@ if [[ "$TARGET" == "prod" ]]; then DB_USER="cmc" DB_PASS="xVRQI&cA?7AU=hqJ!%au" DB_NAME="cmc" +elif [[ "$TARGET" == "stg" ]]; then + DB_CONTAINER="cmc-stg-db" + DB_USER="cmc" + DB_PASS="xVRQI&cA?7AU=hqJ!%au" + DB_NAME="cmc" else + # local DB_CONTAINER="cmc-db" DB_USER="cmc" DB_PASS="xVRQI&cA?7AU=hqJ!%au" DB_NAME="cmc" fi -# Sync latest backup from production -rsync -avz -e "ssh -i ~/.ssh/cmc-old" --progress cmc@sales.cmctechnologies.com.au:~/backups /home/cmc/ -LATEST_BACKUP=$(ls -t /home/cmc/backups/backup_*.sql.gz | head -n1) +# Get latest backup from production +LATEST_REMOTE_BACKUP=$(ssh cmc "ls -t /home/cmc/backups/backup_*.sql.gz | head -n1") +echo "Syncing latest backup: $LATEST_REMOTE_BACKUP" +rsync -avz --progress "cmc:$LATEST_REMOTE_BACKUP" ~/backups/ +LATEST_BACKUP=$(basename "$LATEST_REMOTE_BACKUP") +LATEST_BACKUP=~/backups/$LATEST_BACKUP echo "Restoring database from latest backup: $LATEST_BACKUP to $TARGET ($DB_CONTAINER)" if [ -f "$LATEST_BACKUP" ]; then docker cp "$LATEST_BACKUP" "$DB_CONTAINER":/tmp/backup.sql.gz docker exec "$DB_CONTAINER" sh -c "gunzip < /tmp/backup.sql.gz | mariadb -u $DB_USER -p'$DB_PASS' $DB_NAME" echo "Database restore complete." else - echo "No backup file found in /home/cmc/backups. Skipping database restore." + echo "No backup file found in ~/backups. Skipping database restore." fi