Fix PostgreSQL ensureUsers: use ensureDBOwnership instead of ensureClauses

ensureClauses generates ALTER ROLE clauses, not GRANT statements, so
'"DATABASE btcpayserver" = "ALL PRIVILEGES"' produced invalid SQL.
ensureDBOwnership = true makes each user own its database, which is
the intended effect.
This commit is contained in:
Sovran Systems
2026-08-10 11:44:19 -05:00
parent ebcc086a7e
commit a37b1a91bf
+2 -2
View File
@@ -248,8 +248,8 @@ in {
enable = true; enable = true;
ensureDatabases = [ "btcpayserver" "nbxplorer" ]; ensureDatabases = [ "btcpayserver" "nbxplorer" ];
ensureUsers = [ ensureUsers = [
{ name = cfg.btcpayserver.user; ensureClauses = { "DATABASE btcpayserver" = "ALL PRIVILEGES"; }; } { name = cfg.btcpayserver.user; ensureDBOwnership = true; }
{ name = cfg.nbxplorer.user; ensureClauses = { "DATABASE nbxplorer" = "ALL PRIVILEGES"; }; } { name = cfg.nbxplorer.user; ensureDBOwnership = true; }
]; ];
}; };