]> git.donarmstrong.com Git - dsa-puppet.git/commitdiff
Try to get a kfreebsd module going
authorPeter Palfrader <peter@palfrader.org>
Thu, 25 Feb 2010 19:09:19 +0000 (20:09 +0100)
committerPeter Palfrader <peter@palfrader.org>
Thu, 25 Feb 2010 19:09:19 +0000 (20:09 +0100)
manifests/site.pp
modules/kfreebsd/files/dsa-killruby [new file with mode: 0644]
modules/kfreebsd/manifests/init.pp [new file with mode: 0644]

index 56f7d3b29dca58aeb0de17f3bca1bcf2abcc13a3..27a8a23bd52c8369fc95a2f8380ad304db5f0049 100644 (file)
@@ -89,5 +89,8 @@ node default {
     case $portforwarder_user_exists {
         "true":    { include portforwarder }
     }
+    case $debarchitecture {
+        "kfreebsd-amd64", "kfreebsd-i386":    { include kfreebsd }
+    }
     include samhain
 }
diff --git a/modules/kfreebsd/files/dsa-killruby b/modules/kfreebsd/files/dsa-killruby
new file mode 100644 (file)
index 0000000..cf5056a
--- /dev/null
@@ -0,0 +1,5 @@
+# every hour, kill all puppet jobs that are lingering around, i.e. all
+# processes whose parent is init, and who have lived for longer than an hour
+# (if they lived for 10 hours then they get to live an hour longer because
+# the regex is just that gracious.
+12 * * * *     root    pgrep -P 1 -f '/usr/bin/ruby1.8 /usr/sbin/puppetd --factsync -o --no-daemonize' | xargs ps --no-headers -o pid,etime  | grep '[1-9]:..:..$' | awk '{print $1}' | xargs --no-run-if-empty kill -9
diff --git a/modules/kfreebsd/manifests/init.pp b/modules/kfreebsd/manifests/init.pp
new file mode 100644 (file)
index 0000000..4dcc383
--- /dev/null
@@ -0,0 +1,10 @@
+class kfreebsd {
+    file {
+        "/etc/cron.d/dsa-dsa-killruby":
+            source  => [ "puppet:///kfreebsd/dsa-dsa-killruby" ],
+            ;
+    }
+}
+# vim:set et:
+# vim:set ts=4:
+# vim:set shiftwidth=4: