Files
miem_workers/infra/postgres-backup.sh
agent b933f95302
All checks were successful
CI / test (pull_request) Successful in 9m11s
CI / deploy (pull_request) Has been skipped
fix: finalize weekly postgres backup retention
2026-09-15 18:50:22 +03:00

19 lines
546 B
Bash

#!/bin/sh
set -eu
umask 077
app_dir=$(CDPATH= cd -- "$(dirname "$0")/.." && pwd)
backup_dir="$HOME/backups/postgres"
backup="$backup_dir/postgres-latest.sql"
temporary="$backup.tmp.$$"
mkdir -p "$backup_dir"
trap 'rm -f -- "$temporary"' EXIT HUP INT TERM
cd "$app_dir"
docker compose exec -T postgres sh -c 'pg_dumpall -U "$POSTGRES_USER"' > "$temporary"
test -s "$temporary"
mv "$temporary" "$backup"
find "$HOME/backups/miem_workers" -maxdepth 1 -type f -name 'miem_workers-*.sql' -delete 2>/dev/null || true
printf '%s\n' "Created $backup"