#!/usr/bin/env bash set -euo pipefail if [[ -z "${DATABASE_URL:-}" && -z "${BACKUP_DATABASE_URL:-}" ]]; then echo "DATABASE_URL or BACKUP_DATABASE_URL is required." exit 1 fi ENV_FILE="${ENV_FILE:-./.env}" if [[ -f "$ENV_FILE" ]]; then set -a # shellcheck source=/dev/null . "$ENV_FILE" set +a fi OUT_DIR="${BACKUP_DIR:-./backups}" mkdir -p "$OUT_DIR" STAMP="$(date +%F_%H%M%S)" OUT_FILE="${OUT_DIR}/skymoney_${STAMP}.dump" pg_dump "${BACKUP_DATABASE_URL:-$DATABASE_URL}" -Fc -f "$OUT_FILE" echo "Backup written to: $OUT_FILE"