diff options
Diffstat (limited to 'modules/zfssnap/default.nix')
| -rw-r--r-- | modules/zfssnap/default.nix | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/modules/zfssnap/default.nix b/modules/zfssnap/default.nix index f46cd510..f6f32852 100644 --- a/modules/zfssnap/default.nix +++ b/modules/zfssnap/default.nix | |||
| @@ -48,6 +48,20 @@ in { | |||
| 48 | type = types.str; | 48 | type = types.str; |
| 49 | default = "*-*-* *:00/5:00"; | 49 | default = "*-*-* *:00/5:00"; |
| 50 | }; | 50 | }; |
| 51 | |||
| 52 | verbosity = mkOption { | ||
| 53 | type = types.int; | ||
| 54 | default = 2; | ||
| 55 | }; | ||
| 56 | |||
| 57 | extraPruneArgs = mkOption { | ||
| 58 | type = with types; listOf str; | ||
| 59 | default = []; | ||
| 60 | }; | ||
| 61 | extraAutosnapArgs = mkOption { | ||
| 62 | type = with types; listOf str; | ||
| 63 | default = []; | ||
| 64 | }; | ||
| 51 | }; | 65 | }; |
| 52 | }; | 66 | }; |
| 53 | 67 | ||
| @@ -59,7 +73,7 @@ in { | |||
| 59 | before = [ "zfssnap-prune.service" ]; | 73 | before = [ "zfssnap-prune.service" ]; |
| 60 | serviceConfig = { | 74 | serviceConfig = { |
| 61 | Type = "oneshot"; | 75 | Type = "oneshot"; |
| 62 | ExecStart = "${zfssnap}/bin/zfssnap -vv"; | 76 | ExecStart = "${zfssnap}/bin/zfssnap --verbosity=${toString cfg.verbosity} autosnap ${escapeShellArgs cfg.extraAutosnapArgs}"; |
| 63 | 77 | ||
| 64 | LogRateLimitIntervalSec = 0; | 78 | LogRateLimitIntervalSec = 0; |
| 65 | }; | 79 | }; |
| @@ -72,7 +86,7 @@ in { | |||
| 72 | ExecStart = let | 86 | ExecStart = let |
| 73 | mkSectionName = name: strings.escape [ "[" "]" ] (strings.toUpper name); | 87 | mkSectionName = name: strings.escape [ "[" "]" ] (strings.toUpper name); |
| 74 | zfssnapConfig = generators.toINI { inherit mkSectionName; } cfg.config; | 88 | zfssnapConfig = generators.toINI { inherit mkSectionName; } cfg.config; |
| 75 | in "${zfssnap}/bin/zfssnap -vv prune --config=${pkgs.writeText "zfssnap.ini" zfssnapConfig}"; | 89 | in "${zfssnap}/bin/zfssnap --verbosity=${toString cfg.verbosity} prune --config=${pkgs.writeText "zfssnap.ini" zfssnapConfig} ${escapeShellArgs cfg.extraPruneArgs}"; |
| 76 | 90 | ||
| 77 | LogRateLimitIntervalSec = 0; | 91 | LogRateLimitIntervalSec = 0; |
| 78 | }; | 92 | }; |
