aboutsummaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorIsmaël Bouya <ismael.bouya@normalesup.org>2020-01-17 01:15:21 +0100
committerIsmaël Bouya <ismael.bouya@normalesup.org>2020-01-17 01:15:21 +0100
commit739d28eaf8cb226f74a7e7f5ad31fb152a90ee4b (patch)
treedea00d3774ea173d4e85ab2a4107a8100187d354 /modules
parent71a2425ed95120a6de3a41bb233b1066779d4c26 (diff)
downloadNix-739d28eaf8cb226f74a7e7f5ad31fb152a90ee4b.tar.gz
Nix-739d28eaf8cb226f74a7e7f5ad31fb152a90ee4b.tar.zst
Nix-739d28eaf8cb226f74a7e7f5ad31fb152a90ee4b.zip
Remove mail command in backup script
Diffstat (limited to 'modules')
-rw-r--r--modules/private/environment.nix1
-rw-r--r--modules/private/system/backup-2.nix1
-rw-r--r--modules/rsync_backup/default.nix14
3 files changed, 3 insertions, 13 deletions
diff --git a/modules/private/environment.nix b/modules/private/environment.nix
index 7da2480..ffb61c5 100644
--- a/modules/private/environment.nix
+++ b/modules/private/environment.nix
@@ -420,7 +420,6 @@ in
420 ''; 420 '';
421 type = submodule { 421 type = submodule {
422 options = { 422 options = {
423 mailto = mkOption { type = str; description = "Where to e-mail on error"; };
424 ssh_key = mkOption { 423 ssh_key = mkOption {
425 description = "SSH key information"; 424 description = "SSH key information";
426 type = submodule { 425 type = submodule {
diff --git a/modules/private/system/backup-2.nix b/modules/private/system/backup-2.nix
index 1d84667..4e24c12 100644
--- a/modules/private/system/backup-2.nix
+++ b/modules/private/system/backup-2.nix
@@ -50,7 +50,6 @@
50 50
51 services.rsyncBackup = { 51 services.rsyncBackup = {
52 mountpoint = "/backup2"; 52 mountpoint = "/backup2";
53 mailto = config.myEnv.rsync_backup.mailto;
54 profiles = config.myEnv.rsync_backup.profiles; 53 profiles = config.myEnv.rsync_backup.profiles;
55 ssh_key_public = config.myEnv.rsync_backup.ssh_key.public; 54 ssh_key_public = config.myEnv.rsync_backup.ssh_key.public;
56 ssh_key_private = config.myEnv.rsync_backup.ssh_key.private; 55 ssh_key_private = config.myEnv.rsync_backup.ssh_key.private;
diff --git a/modules/rsync_backup/default.nix b/modules/rsync_backup/default.nix
index dadf5e7..a2ef0fd 100644
--- a/modules/rsync_backup/default.nix
+++ b/modules/rsync_backup/default.nix
@@ -84,19 +84,16 @@ let
84 84
85 ssh_key = config.secrets.fullPaths."rsync_backup/identity"; 85 ssh_key = config.secrets.fullPaths."rsync_backup/identity";
86 86
87 backup_head = mailto: '' 87 backup_head = ''
88 #!${pkgs.stdenv.shell} 88 #!${pkgs.stdenv.shell}
89 EXCL_FROM=`mktemp` 89 EXCL_FROM=`mktemp`
90 FILES_FROM=`mktemp` 90 FILES_FROM=`mktemp`
91 TMP_STDERR=`mktemp` 91 TMP_STDERR=`mktemp`
92 92
93 on_exit() { 93 on_exit() {
94 ${lib.optionalString (mailto != null) ''
95 MAILTO="${mailto}"
96 if [ -s "$TMP_STDERR" ]; then 94 if [ -s "$TMP_STDERR" ]; then
97 cat "$TMP_STDERR" | ${pkgs.mailutils}/bin/mail -s "save_distant rsync error" "$MAILTO" 95 cat "$TMP_STDERR"
98 fi 96 fi
99 ''}
100 rm -f $TMP_STDERR $EXCL_FROM $FILES_FROM 97 rm -f $TMP_STDERR $EXCL_FROM $FILES_FROM
101 } 98 }
102 99
@@ -186,11 +183,6 @@ in
186 type = lib.types.path; 183 type = lib.types.path;
187 description = "Path to the base folder for backups"; 184 description = "Path to the base folder for backups";
188 }; 185 };
189 mailto = lib.mkOption {
190 type = lib.types.nullOr lib.types.str;
191 default = null;
192 description = "E-mail to send the report to";
193 };
194 profiles = lib.mkOption { 186 profiles = lib.mkOption {
195 type = lib.types.attrsOf profileModule; 187 type = lib.types.attrsOf profileModule;
196 default = {}; 188 default = {};
@@ -223,7 +215,7 @@ in
223 215
224 services.cron.systemCronJobs = let 216 services.cron.systemCronJobs = let
225 backup = pkgs.writeScript "backup.sh" (builtins.concatStringsSep "\n" ([ 217 backup = pkgs.writeScript "backup.sh" (builtins.concatStringsSep "\n" ([
226 (backup_head cfg.mailto) 218 backup_head
227 ] ++ lib.mapAttrsToList backup_profile cfg.profiles)); 219 ] ++ lib.mapAttrsToList backup_profile cfg.profiles));
228 in [ 220 in [
229 '' 221 ''