#!/bin/bash
pg_dumpall --version

# Satu database tambahan tetap untuk membuktikan cakupan cluster.
psql -X -d postgres -v ON_ERROR_STOP=1 \
  -c "DROP DATABASE IF EXISTS bk_gudang WITH (FORCE)" \
  -c "CREATE DATABASE bk_gudang" > /dev/null

# Satu perintah, seluruh cluster: semua database, semua role, semuanya.
# --exclude-database membuang database sementara latihan (pgtutor_*, probe_*)
# agar cadangan hanya berisi database yang dimaksudkan.
pg_dumpall --exclude-database 'pgtutor_*' --exclude-database 'probe_*' \
  > backup_cluster.sql

# Bukti cakupan: database bk_gudang ikut di dalam file.
grep '^CREATE DATABASE bk_gudang' backup_cluster.sql

# File demo dihapus agar bundel contoh tetap ringkas;
# di lingkungan nyata file inilah aset terpenting Anda.
rm backup_cluster.sql

# Bersih-bersih database demo.
psql -X -d postgres -c "DROP DATABASE bk_gudang WITH (FORCE)" > /dev/null
