aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xmodules/draklive/files/clean-live.sh13
-rw-r--r--modules/draklive/manifests/init.pp14
2 files changed, 27 insertions, 0 deletions
diff --git a/modules/draklive/files/clean-live.sh b/modules/draklive/files/clean-live.sh
new file mode 100755
index 00000000..1e6ce7d7
--- /dev/null
+++ b/modules/draklive/files/clean-live.sh
@@ -0,0 +1,13 @@
+#!/bin/bash
+
+# clean old draklive build sets
+DRAKLIVE_ROOT=/var/lib/draklive
+RM="echo rm -rf"
+
+# keep only chroot/build sets from previous day
+MAX_BUILD_AGE=1
+find $DRAKLIVE_ROOT/{chroot/*,build/*/*} -maxdepth 0 -not -name dist -mtime +$(expr $MAX_BUILD_AGE - 1) -exec $RM {} \;
+
+# keep dist (iso + lists) for all sets during 20 days
+MAX_DIST_AGE=20
+find $DRAKLIVE_ROOT/build/*/dist -maxdepth 0 -mtime +$(expr $MAX_DIST_AGE - 1) -exec $RM {} \;
diff --git a/modules/draklive/manifests/init.pp b/modules/draklive/manifests/init.pp
index 3ba24d87..0f643bb4 100644
--- a/modules/draklive/manifests/init.pp
+++ b/modules/draklive/manifests/init.pp
@@ -45,5 +45,19 @@ class draklive {
hour => "4",
minute => "30",
}
+
+ file { "/usr/local/bin/clean-live.sh":
+ ensure => present,
+ owner => root,
+ group => root,
+ mode => 755,
+ source => "puppet:///modules/draklive/clean-live.sh",
+ }
+
+ cron { "clean live build data":
+ command => "/usr/local/bin/clean-live.sh",
+ hour => "4",
+ minute => "20",
+ }
}
}