infrastructure/playbooks/roles/backup/files/hooks/postgresql

19 lines
397 B
Bash
Executable file

#!/usr/bin/env bash
if [ "$2" != "before" ]; then
exit 0
fi
cd "$1"
sudo rm -r "$1"/*.dump || true
sudo chown postgres:postgres "$1"
postgres_tables=$(sudo -u postgres psql -Atc "SELECT datname FROM pg_database WHERE datistemplate = false;")
for i in $postgres_tables
do
printf "dumping %s ..." "$i"
sudo -u postgres pg_dump -Fd -C -Zzstd:5 -j2 -f"pg_dump_$i.dump" "$i"
echo " done"
done