diff --git a/scripts/remove b/scripts/remove index f9d9c72..9766f4b 100755 --- a/scripts/remove +++ b/scripts/remove @@ -61,13 +61,22 @@ ynh_remove_logrotate ynh_script_progression --message="Removing the PostgreSQL database..." --weight=4 # Remove a database if it exists, along with the associated user -ynh_psql_remove_db --db_user=$db_user --db_name=$db_name -ynh_psql_execute_as_root --database=$synapse_db_name --sql="DROP OWNED BY ""$app"";" -ynh_psql_execute_as_root --database=$synapse_db_name --sql="DROP OWNED BY ""$bot_synapse_db_user"";" -ynh_psql_execute_as_root --database=$synapse_db_name --sql="DROP OWNED BY ""$botname"";" -ynh_psql_execute_as_root --database=$synapse_db_name --sql="DROP USER ""$app"";" -ynh_psql_execute_as_root --database=$synapse_db_name --sql="DROP USER ""$bot_synapse_db_user"";" -ynh_psql_execute_as_root --database=$synapse_db_name --sql="DROP USER ""$botname"";" +ynh_psql_remove_db --db_user="$db_user" --db_name="$db_name" + +if ynh_psql_user_exists --user="$app"; then + ynh_psql_execute_as_root --database="$synapse_db_name" --sql="DROP OWNED BY \"$app\";" + ynh_psql_execute_as_root --database="$synapse_db_name" --sql="DROP USER \"$app\";" +fi + +if ynh_psql_user_exists --user="$bot_synapse_db_user"; then + ynh_psql_execute_as_root --database="$synapse_db_name" --sql="DROP OWNED BY \"$bot_synapse_db_user\";" + ynh_psql_execute_as_root --database="$synapse_db_name" --sql="DROP USER \"$bot_synapse_db_user\";" +fi + +if ynh_psql_user_exists --user="$botname"; then + ynh_psql_execute_as_root --database="$synapse_db_name" --sql="DROP OWNED BY \"$botname\";" + ynh_psql_execute_as_root --database="$synapse_db_name" --sql="DROP USER \"$botname\";" +fi #yunohost app action run $synapse_instance drop_user -a username=$botname #=================================================