This commit is contained in:
22
scripts/restore_db.sh
Executable file
22
scripts/restore_db.sh
Executable file
@@ -0,0 +1,22 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
if [[ $# -ne 1 ]]; then
|
||||
echo "Usage: $0 path/to/backup.dump" >&2
|
||||
exit 2
|
||||
fi
|
||||
|
||||
BACKUP_FILE="$1"
|
||||
COMPOSE="${COMPOSE:-docker compose}"
|
||||
DB_SERVICE="${DB_SERVICE:-db}"
|
||||
POSTGRES_DB="${POSTGRES_DB:-drivers}"
|
||||
POSTGRES_USER="${POSTGRES_USER:-drivers}"
|
||||
|
||||
if [[ ! -f "$BACKUP_FILE" ]]; then
|
||||
echo "Backup file not found: $BACKUP_FILE" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Restoring $BACKUP_FILE into $POSTGRES_DB. This replaces database contents."
|
||||
cat "$BACKUP_FILE" | $COMPOSE exec -T "$DB_SERVICE" pg_restore -U "$POSTGRES_USER" -d "$POSTGRES_DB" --clean --if-exists
|
||||
echo "Restore complete"
|
||||
Reference in New Issue
Block a user