blob: 7434368a3becccf7b5595358b9b498b155ba4369 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
#!/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>
#
require 'puppet'
require 'time'
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|
puts "#{node.name} checked in #{((Time.now - Time.parse(node.values[:_timestamp].to_s)) / 60).floor} minutes ago. Version #{node.values['puppetversion']}#{node.expired? ? ' Cache expired.' : ''}"
end
|