|
|
|
@@ -23,12 +23,10 @@ let
|
|
|
|
|
|
|
|
|
|
backupServiceUnits = listToAttrs (map ({jobName, jobOptions, targetName, targetOptions}: let
|
|
|
|
|
jobPasswordFile = if jobOptions.passwordFile != null then jobOptions.passwordFile else
|
|
|
|
|
if builtins.elem "clerie-backup-job-${jobName}" (attrNames config.sops.secrets) then config.sops.secrets."clerie-backup-job-${jobName}".path else
|
|
|
|
|
config.age.secrets."clerie-backup-job-${jobName}".path;
|
|
|
|
|
config.sops.secrets."clerie-backup-job-${jobName}".path;
|
|
|
|
|
repoPath = if jobOptions.repoPath == null then "/${config.networking.hostName}/${jobName}" else jobOptions.repoPath;
|
|
|
|
|
targetPasswordFile = if targetOptions.passwordFile != null then targetOptions.passwordFile else
|
|
|
|
|
if builtins.elem "clerie-backup-target-${targetName}" (attrNames config.sops.secrets) then config.sops.secrets."clerie-backup-target-${targetName}".path else
|
|
|
|
|
config.age.secrets."clerie-backup-target-${targetName}".path;
|
|
|
|
|
config.sops.secrets."clerie-backup-target-${targetName}".path;
|
|
|
|
|
targetUsername = if targetOptions.username == null then config.networking.hostName else targetOptions.username;
|
|
|
|
|
in
|
|
|
|
|
nameValuePair "clerie-backup-${jobName}-${targetName}" {
|
|
|
|
@@ -73,12 +71,10 @@ let
|
|
|
|
|
|
|
|
|
|
backupCommands = map ({jobName, jobOptions, targetName, targetOptions}: let
|
|
|
|
|
jobPasswordFile = if jobOptions.passwordFile != null then jobOptions.passwordFile else
|
|
|
|
|
if builtins.elem "clerie-backup-job-${jobName}" (attrNames config.sops.secrets) then config.sops.secrets."clerie-backup-job-${jobName}".path else
|
|
|
|
|
config.age.secrets."clerie-backup-job-${jobName}".path;
|
|
|
|
|
config.sops.secrets."clerie-backup-job-${jobName}".path;
|
|
|
|
|
repoPath = if jobOptions.repoPath == null then "/${config.networking.hostName}/${jobName}" else jobOptions.repoPath;
|
|
|
|
|
targetPasswordFile = if targetOptions.passwordFile != null then targetOptions.passwordFile else
|
|
|
|
|
if builtins.elem "clerie-backup-target-${targetName}" (attrNames config.sops.secrets) then config.sops.secrets."clerie-backup-target-${targetName}".path else
|
|
|
|
|
config.age.secrets."clerie-backup-target-${targetName}".path;
|
|
|
|
|
config.sops.secrets."clerie-backup-target-${targetName}".path;
|
|
|
|
|
targetUsername = if targetOptions.username == null then config.networking.hostName else targetOptions.username;
|
|
|
|
|
in pkgs.writeShellApplication {
|
|
|
|
|
name = "clerie-backup-${jobName}-${targetName}";
|
|
|
|
|