Refurbishing db refresher script for local use
This commit is contained in:
parent
23853455f4
commit
c496e7232f
21
scripts/archive/restore_db_from_backup.sh → scripts/util/restore_db_from_backup.sh
Normal file → Executable file
21
scripts/archive/restore_db_from_backup.sh → scripts/util/restore_db_from_backup.sh
Normal file → Executable file
|
|
@ -1,7 +1,7 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
set -e
|
set -e
|
||||||
# Default to staging
|
# Default to local
|
||||||
TARGET="stg"
|
TARGET="local"
|
||||||
for arg in "$@"; do
|
for arg in "$@"; do
|
||||||
if [[ "$arg" == "-target" ]]; then
|
if [[ "$arg" == "-target" ]]; then
|
||||||
NEXT_IS_TARGET=1
|
NEXT_IS_TARGET=1
|
||||||
|
|
@ -18,21 +18,30 @@ if [[ "$TARGET" == "prod" ]]; then
|
||||||
DB_USER="cmc"
|
DB_USER="cmc"
|
||||||
DB_PASS="xVRQI&cA?7AU=hqJ!%au"
|
DB_PASS="xVRQI&cA?7AU=hqJ!%au"
|
||||||
DB_NAME="cmc"
|
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
|
else
|
||||||
|
# local
|
||||||
DB_CONTAINER="cmc-db"
|
DB_CONTAINER="cmc-db"
|
||||||
DB_USER="cmc"
|
DB_USER="cmc"
|
||||||
DB_PASS="xVRQI&cA?7AU=hqJ!%au"
|
DB_PASS="xVRQI&cA?7AU=hqJ!%au"
|
||||||
DB_NAME="cmc"
|
DB_NAME="cmc"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Sync latest backup from production
|
# Get latest backup from production
|
||||||
rsync -avz -e "ssh -i ~/.ssh/cmc-old" --progress cmc@sales.cmctechnologies.com.au:~/backups /home/cmc/
|
LATEST_REMOTE_BACKUP=$(ssh cmc "ls -t /home/cmc/backups/backup_*.sql.gz | head -n1")
|
||||||
LATEST_BACKUP=$(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)"
|
echo "Restoring database from latest backup: $LATEST_BACKUP to $TARGET ($DB_CONTAINER)"
|
||||||
if [ -f "$LATEST_BACKUP" ]; then
|
if [ -f "$LATEST_BACKUP" ]; then
|
||||||
docker cp "$LATEST_BACKUP" "$DB_CONTAINER":/tmp/backup.sql.gz
|
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"
|
docker exec "$DB_CONTAINER" sh -c "gunzip < /tmp/backup.sql.gz | mariadb -u $DB_USER -p'$DB_PASS' $DB_NAME"
|
||||||
echo "Database restore complete."
|
echo "Database restore complete."
|
||||||
else
|
else
|
||||||
echo "No backup file found in /home/cmc/backups. Skipping database restore."
|
echo "No backup file found in ~/backups. Skipping database restore."
|
||||||
fi
|
fi
|
||||||
Loading…
Reference in a new issue