add pre/post command

This commit is contained in:
Jeffrey C. Ollie 2023-03-30 15:40:02 -05:00
parent c07fe53f56
commit cb0e49e5d6
No known key found for this signature in database
GPG key ID: F936E4DCB7E25F15

View file

@ -19,8 +19,6 @@
arch = {
"x86_64-linux" = "amd64";
}.${system};
in
{
packages = { };
@ -109,6 +107,14 @@
paths = lib.options.mkOption {
type = lib.types.listOf lib.types.str;
};
preCommand = lib.options.mkOption {
type = lib.types.lines;
default = "";
};
postCommand = lib.options.mkOption {
type = lib.types.lines;
default = "";
};
};
}
);
@ -160,20 +166,10 @@
AZURE_ACCOUNT_KEY=${cfg.azure.account_key}
'';
}.${cfg.storage};
# if cfg.storage == "b2"
# then
# else
# "";
repositoryConfig = {
"b2" = "b2:${bucket}:${directory}";
"azure" = "azure:${bucket}:${directory}";
}.${cfg.storage};
# if cfg.storage == "b2"
# then
# "b2:${cfg.b2.bucket}:${config.networking.hostName}.${config.networking.domain}"
# else
# "";
in
{
text = ''
@ -270,7 +266,13 @@
backup.excludes;
paths = lib.strings.concatStringsSep " " backup.paths;
in
"${pkgs.restic}/bin/restic backup${one-file-system}${excludes} ${paths}"
''
${backup.preCommand}
${pkgs.restic}/bin/restic backup${one-file-system}${excludes} ${paths}
${backup.postCommand}
''
)
cfg.backups
);