mirror of
https://github.com/foo-dogsquared/nixos-config.git
synced 2025-02-07 12:19:07 +00:00
hosts/plover: update Grafana and PostgreSQL integration
This commit is contained in:
parent
7430d992f2
commit
9527896251
@ -2,6 +2,9 @@
|
||||
|
||||
let
|
||||
monitoringDomain = "monitoring.${config.networking.domain}";
|
||||
grafanaDatabaseUser = config.services.grafana.settings.database.user;
|
||||
grafanaDatabaseName = config.services.grafana.settings.database.name;
|
||||
|
||||
authDomain = "auth.${config.networking.domain}";
|
||||
authSubpath = path: "${authDomain}/${path}";
|
||||
|
||||
@ -129,16 +132,26 @@ in
|
||||
systemd.services.grafana = {
|
||||
preStart =
|
||||
let
|
||||
grafanaDatabaseUser = config.services.grafana.settings.database.user;
|
||||
psql = lib.getExe' config.services.postgresql.package "psql";
|
||||
in
|
||||
lib.mkBefore ''
|
||||
# Setting up the appropriate schema for PostgreSQL secure schema usage.
|
||||
${psql} -tAc "SELECT 1 FROM information_schema.schemata WHERE schema_name='${grafanaDatabaseUser}';" \
|
||||
grep -q 1 || ${psql} -tAc "CREATE SCHEMA IF NOT EXISTS AUTHORIZATION ${grafanaDatabaseUser};"
|
||||
${psql} -tAc "CREATE SCHEMA IF NOT EXISTS AUTHORIZATION ${grafanaDatabaseUser};"
|
||||
'';
|
||||
};
|
||||
|
||||
# Setting up PostgreSQL with secure schema.
|
||||
services.postgresql = {
|
||||
ensureDatabases = [ grafanaDatabaseName ];
|
||||
ensureUsers = [{
|
||||
name = grafanaDatabaseName;
|
||||
ensurePermissions = {
|
||||
"DATABASE ${grafanaDatabaseName}" = "ALL PRIVILEGES";
|
||||
"SCHEMA ${grafanaDatabaseUser}" = "ALL PRIVILEGES";
|
||||
};
|
||||
}];
|
||||
};
|
||||
|
||||
sops.secrets =
|
||||
let
|
||||
grafanaFileAttributes = {
|
||||
|
Loading…
Reference in New Issue
Block a user