Files
homelab-infra/ops/restore-tests/run-restore-checks.sh
T
Micha d1f9491b24 feat(restore): shared postgresql 18 cluster restore drill
Kompletter Restore-Drill fuer den Shared-PostgreSQL-18-Cluster:
globals (Rollen) + 5 per-DB Custom-Format-Dumps (paperless,
mailarchiver, authelia, nextcloud, mealie).

Bekannter mailarchiver-Bootstrap-Rollenkonflikt wird toleriert.
Authelia/Nextcloud/Mealie-Dumps als optional markiert.
Tabellen-Count pro DB als fachlicher Sanity-Check.

Machbarkeit vorab verifiziert: alle Dumps auf Host vorhanden,
pg_restore im postgres:18.4-Image verfuegbar, Postgres auf shfs
bewiesen durch bestehende Tests.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-03 13:02:16 +02:00

72 lines
2.0 KiB
Bash
Executable File

#!/bin/bash
set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
MODE="${1:-}"
WHATIF="${2:-}"
case "$MODE" in
freshness)
exec "$SCRIPT_DIR/check-restore-freshness.sh"
;;
vaultwarden)
if [ "$WHATIF" = "--what-if" ]; then
exec "$SCRIPT_DIR/vaultwarden-restore-test.sh" --what-if
fi
exec "$SCRIPT_DIR/vaultwarden-restore-test.sh"
;;
gitea)
if [ "$WHATIF" = "--what-if" ]; then
exec "$SCRIPT_DIR/gitea-restore-test.sh" --what-if
fi
exec "$SCRIPT_DIR/gitea-restore-test.sh"
;;
paperless)
if [ "$WHATIF" = "--what-if" ]; then
exec "$SCRIPT_DIR/paperless-restore-test.sh" --what-if
fi
exec "$SCRIPT_DIR/paperless-restore-test.sh"
;;
immich)
if [ "$WHATIF" = "--what-if" ]; then
exec "$SCRIPT_DIR/immich-restore-test.sh" --what-if
fi
exec "$SCRIPT_DIR/immich-restore-test.sh"
;;
authelia)
if [ "$WHATIF" = "--what-if" ]; then
exec "$SCRIPT_DIR/authelia-restore-test.sh" --what-if
fi
exec "$SCRIPT_DIR/authelia-restore-test.sh"
;;
nextcloud)
if [ "$WHATIF" = "--what-if" ]; then
exec "$SCRIPT_DIR/nextcloud-restore-test.sh" --what-if
fi
exec "$SCRIPT_DIR/nextcloud-restore-test.sh"
;;
komodo-bootstrap)
if [ "$WHATIF" = "--what-if" ]; then
exec "$SCRIPT_DIR/komodo-bootstrap-test.sh" --what-if
fi
exec "$SCRIPT_DIR/komodo-bootstrap-test.sh"
;;
komodo-mongo-restore)
if [ "$WHATIF" = "--what-if" ]; then
exec "$SCRIPT_DIR/komodo-mongo-restore-test.sh" --what-if
fi
exec "$SCRIPT_DIR/komodo-mongo-restore-test.sh"
;;
shared-pg-cluster)
if [ "$WHATIF" = "--what-if" ]; then
exec "$SCRIPT_DIR/shared-pg-cluster-restore-test.sh" --what-if
fi
exec "$SCRIPT_DIR/shared-pg-cluster-restore-test.sh"
;;
*)
echo "Usage: $0 {freshness|vaultwarden|gitea|paperless|immich|authelia|nextcloud|komodo-bootstrap|komodo-mongo-restore|shared-pg-cluster} [--what-if]" >&2
exit 1
;;
esac