summaryrefslogtreecommitdiff
path: root/files
diff options
context:
space:
mode:
authormh <mh@immerda.ch>2008-12-27 20:40:50 +0000
committermh <mh@immerda.ch>2008-12-27 20:40:50 +0000
commit972d1f4b27d89ffcda90b1cbe5e7b1923af62c03 (patch)
tree51813754d6650c87cf3d9a40da602ae51b3b2162 /files
parente99ffa30dba1fb918d2c5018e2f282e51abcdbf6 (diff)
added lastrun check
Diffstat (limited to 'files')
-rw-r--r--files/master/puppetlast18
1 files changed, 18 insertions, 0 deletions
diff --git a/files/master/puppetlast b/files/master/puppetlast
new file mode 100644
index 0000000..f547069
--- /dev/null
+++ b/files/master/puppetlast
@@ -0,0 +1,18 @@
+#!/usr/bin/env ruby
+# Puppetlast, a script to output the last check-in time of nodes. Also outputs the cached configuration state, if expired or not.
+#
+# AJ "Fujin" Christensen <aj@junglist.gen.nz>
+# changed by admin+puppet(at)immerda.ch to fit our needs
+#
+require 'puppet'
+
+Puppet[:config] = "/etc/puppet/puppet.conf"
+Puppet.parse_config
+Puppet[:name] = "puppetmasterd"
+Puppet::Node::Facts.terminus_class = :yaml
+
+Puppet::Node::Facts.search("*").sort { |a,b| a.name <=> b.name }.each do |node|
+ if ((Time.now - node.values[:_timestamp]) / 60).floor > 720 then
+ puts "#{node.name} #{node.expired? ? 'cached expired, ' : ''}last checked #{((Time.now - node.values[:_timestamp]) / 60).floor} minutes ago"
+ end
+end