From 20b952b4cd82f1822efbe33e89a923d0eeb9d393 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Wed, 19 Jun 2024 18:00:51 +0200 Subject: [PATCH] fix dropping non-existing database --- clanModules/postgresql/default.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/clanModules/postgresql/default.nix b/clanModules/postgresql/default.nix index 589aa081..d24645eb 100644 --- a/clanModules/postgresql/default.nix +++ b/clanModules/postgresql/default.nix @@ -40,6 +40,7 @@ let pkgs.coreutils pkgs.util-linux pkgs.zstd + pkgs.gnugrep ] } while [[ "$(systemctl is-active postgresql)" == activating ]]; do @@ -57,7 +58,9 @@ let trap "systemctl start ${lib.concatStringsSep " " db.restore.stopOnRestore}" EXIT mkdir -p "${folder}" - runuser -u postgres -- dropdb "${db.name}" + if runuser -u postgres -- psql -d postgres -c "SELECT 1 FROM pg_database WHERE datname = '${db.name}'" | grep -q 1; then + runuser -u postgres -- dropdb "${db.name}" + fi runuser -u postgres -- pg_restore -C -d postgres "${current}" ) else