summaryrefslogtreecommitdiffstats
path: root/makefu/2configs/backup.nix
diff options
context:
space:
mode:
authortv <tv@krebsco.de>2016-02-06 16:24:47 +0100
committertv <tv@krebsco.de>2016-02-06 16:24:47 +0100
commitfbf92edb0e5be4bba59d596d5c74b284de84a5fd (patch)
tree805a8c1efd64adf7efa72b33704fdca64a4d9862 /makefu/2configs/backup.nix
parentb16bfb9c99e6f1f063c5b7358003149db42b70e3 (diff)
parent4c23e33dea4d9901b64bf287983c43862f4990f2 (diff)
Merge remote-tracking branch 'gum/master'
Diffstat (limited to 'makefu/2configs/backup.nix')
-rw-r--r--makefu/2configs/backup.nix30
1 files changed, 30 insertions, 0 deletions
diff --git a/makefu/2configs/backup.nix b/makefu/2configs/backup.nix
new file mode 100644
index 000000000..ed6d1f4a7
--- /dev/null
+++ b/makefu/2configs/backup.nix
@@ -0,0 +1,30 @@
+{ config, lib, ... }:
+with lib;
+let
+ startAt = "0,6,12,18:00";
+ defaultBackupServer = config.krebs.hosts.omo;
+ defaultBackupDir = "/home/backup";
+ defaultPull = host: src: {
+ method = "pull";
+ src = {
+ inherit host;
+ path = src;
+ };
+ dst = {
+ host = defaultBackupServer;
+ path = defaultBackupDir + src;
+ };
+ startAt = "0,6,12,18:00";
+ snapshots = {
+ hourly = { format = "%Y-%m-%dT%H"; retain = 4; };
+ daily = { format = "%Y-%m-%d"; retain = 7; };
+ weekly = { format = "%YW%W"; retain = 4; };
+ monthly = { format = "%Y-%m"; retain = 12; };
+ yearly = { format = "%Y"; };
+ };
+ };
+in {
+ krebs.backup.plans = addNames {
+ wry-to-omo_var-www = defaultPull wry "/var/www";
+ };
+}