From b3de87a452b087633867ad49fa49e2d451131642 Mon Sep 17 00:00:00 2001 From: Matteo Date: Tue, 17 Mar 2026 15:53:43 +0100 Subject: [PATCH] feat : preparation de postgresql (WIP) --- RebuildBdd/Checkup/check-postgresql.sh | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/RebuildBdd/Checkup/check-postgresql.sh b/RebuildBdd/Checkup/check-postgresql.sh index b60da49..a6e4428 100755 --- a/RebuildBdd/Checkup/check-postgresql.sh +++ b/RebuildBdd/Checkup/check-postgresql.sh @@ -45,6 +45,28 @@ require_cmd() { command -v "$1" >/dev/null 2>&1 } +start_postgres_service() { + if "$SUDO_BIN" systemctl start "$POSTGRES_SERVICE_NAME" >/dev/null 2>&1; then + return 0 + fi + + if require_cmd service && "$SUDO_BIN" service "$POSTGRES_SERVICE_NAME" start >/dev/null 2>&1; then + return 0 + fi + + if require_cmd pg_lsclusters && require_cmd pg_ctlcluster; then + local version cluster + while read -r version cluster _; do + [[ -n "$version" && -n "$cluster" ]] || continue + if "$SUDO_BIN" pg_ctlcluster "$version" "$cluster" start >/dev/null 2>&1; then + return 0 + fi + done < <(pg_lsclusters --no-header 2>/dev/null || true) + fi + + return 1 +} + [[ -f "$ENV_FILE" ]] || fail "fichier .env introuvable : $ENV_FILE" set -a @@ -94,7 +116,7 @@ fi if ! "$SUDO_BIN" systemctl is-active --quiet "$POSTGRES_SERVICE_NAME"; then log "Démarrage du service PostgreSQL..." - "$SUDO_BIN" systemctl start "$POSTGRES_SERVICE_NAME" >/dev/null 2>&1 || fail "impossible de démarrer PostgreSQL" + start_postgres_service || fail "impossible de démarrer PostgreSQL" else log "Service PostgreSQL déjà actif." fi