23 lines
632 B
Bash
23 lines
632 B
Bash
#!/usr/bin/env bash
|
|
# backup.sh — Create a manual RDS snapshot for Notes App
|
|
# Usage: source .env && ./backup.sh
|
|
set -euo pipefail
|
|
|
|
: "${AWS_REGION:?Set AWS_REGION in .env}"
|
|
|
|
SNAPSHOT_ID="notes-app-manual-$(date +%Y%m%d-%H%M%S)"
|
|
|
|
echo "Creating RDS snapshot: ${SNAPSHOT_ID}..."
|
|
aws rds create-db-snapshot \
|
|
--db-instance-identifier notes-app-db \
|
|
--db-snapshot-identifier "$SNAPSHOT_ID" \
|
|
--region "$AWS_REGION" \
|
|
--output none
|
|
|
|
echo "Waiting for snapshot to complete..."
|
|
aws rds wait db-snapshot-completed \
|
|
--db-snapshot-identifier "$SNAPSHOT_ID" \
|
|
--region "$AWS_REGION"
|
|
|
|
echo "✅ Backup complete: ${SNAPSHOT_ID}"
|