mysql: Use ensure* options, split definition up into service files.
note/reason for split: nixos submodule option names aren't standardized...
This commit is contained in:
parent
627a45c070
commit
92cd95d6ce
3 changed files with 56 additions and 45 deletions
|
@ -3,9 +3,9 @@
|
|||
with lib;
|
||||
|
||||
mkIf (elem "nextcloud" config.machine.services) {
|
||||
services = let
|
||||
cfg = config.machine;
|
||||
domain = (findFirst (s: s.service == "nextcloud") cfg cfg.vHosts).domain;
|
||||
services = let
|
||||
cfg = config.machine;
|
||||
domain = (findFirst (s: s.service == "nextcloud") cfg cfg.vHosts).domain;
|
||||
in {
|
||||
nextcloud = {
|
||||
enable = true;
|
||||
|
@ -47,5 +47,17 @@ mkIf (elem "nextcloud" config.machine.services) {
|
|||
no-multicast-peers
|
||||
'';
|
||||
};
|
||||
|
||||
mysql = let
|
||||
cfg = config.services.nextcloud.config;
|
||||
in {
|
||||
ensureDatabases = [ cfg.dbname ];
|
||||
ensureUsers = [{
|
||||
name = cfg.dbuser;
|
||||
ensurePermissions = {
|
||||
"${cfg.dbname}.*" = "ALL PRIVILEGES";
|
||||
};
|
||||
}];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue