summaryrefslogtreecommitdiffstats
path: root/makefu/4lib
diff options
context:
space:
mode:
authorlassulus <lass@aidsballs.de>2016-04-09 00:49:56 +0200
committerlassulus <lass@aidsballs.de>2016-04-09 00:49:56 +0200
commite57841421bbb818572145dfec3dce12bf40017b4 (patch)
tree329c116cccc0e10bb6bcc74331933171bf195f12 /makefu/4lib
parent5268f22ee99672a2185b959231208a23fd24f073 (diff)
parent345efd36833fc0ada2805b46fd71bcc9642f4374 (diff)
Merge remote-tracking branch 'cd/master'
Diffstat (limited to 'makefu/4lib')
-rw-r--r--makefu/4lib/default.nix30
1 files changed, 30 insertions, 0 deletions
diff --git a/makefu/4lib/default.nix b/makefu/4lib/default.nix
new file mode 100644
index 00000000..5e9ab208
--- /dev/null
+++ b/makefu/4lib/default.nix
@@ -0,0 +1,30 @@
+{ config, lib, ... }:
+
+with lib;
+let
+ addDefaultTime = bku-entry: recursiveUpdate {
+ snapshots = {
+ daily = { format = "%Y-%m-%d"; retain = 7; };
+ weekly = { format = "%YW%W"; retain = 4; };
+ monthly = { format = "%Y-%m"; retain = 12; };
+ yearly = { format = "%Y"; };
+ };
+ startAt = "5:23";
+ } bku-entry;
+
+ backup-host = config.krebs.hosts.omo;
+ backup-path = "/media/backup";
+in {
+ bku = {
+ inherit addDefaultTime;
+ simplePath = addDefaultTime (path: {
+ method = "pull";
+ src = { host = config.krebs.build.host; inherit path; };
+ dst = {
+ host = backup-host;
+ path = backup-path ++ config.krebs.build.host.name
+ ++ builtins.replaceStrings ["/"] ["-"] path;
+ };
+ });
+ };
+}