From f49c121b8cce9708ad2e737b931f5cbf27707e1f Mon Sep 17 00:00:00 2001 From: Augustin Trancart Date: Tue, 29 Nov 2022 18:51:33 +0100 Subject: [PATCH] Better error message when psql is not there for database_exists (#992) --- helpers/postgresql | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/helpers/postgresql b/helpers/postgresql index 92a70a166..796a36214 100644 --- a/helpers/postgresql +++ b/helpers/postgresql @@ -195,7 +195,13 @@ ynh_psql_database_exists() { # Manage arguments with getopts ynh_handle_getopts_args "$@" - if ! sudo --login --user=postgres PGUSER="postgres" PGPASSWORD="$(cat $PSQL_ROOT_PWD_FILE)" psql -tAc "SELECT datname FROM pg_database WHERE datname='$database';" | grep --quiet "$database"; then + # if psql is not there, we cannot check the db + # though it could exists. + if ! command -v psql + then + ynh_print_err -m "PostgreSQL is not installed, impossible to check for db existence." + return 1 + elif ! sudo --login --user=postgres PGUSER="postgres" PGPASSWORD="$(cat $PSQL_ROOT_PWD_FILE)" psql -tAc "SELECT datname FROM pg_database WHERE datname='$database';" | grep --quiet "$database"; then return 1 else return 0