summaryrefslogtreecommitdiffstats
path: root/lib/puppet/face/facts.rb
blob: 8668b2531f782be19830fa18731d6da4ec7e54b8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
require 'puppet/face/indirector'
require 'puppet/node/facts'

Puppet::Face::Indirector.define(:facts, '0.0.1') do
  set_default_format :yaml

  # Upload our facts to the server
  action(:upload) do
    when_invoked do |options|
      Puppet::Node::Facts.indirection.terminus_class = :facter
      facts = Puppet::Node::Facts.indirection.find(Puppet[:certname])
      Puppet::Node::Facts.indirection.terminus_class = :rest
      Puppet::Node::Facts.indirection.save(facts)
      Puppet.notice "Uploaded facts for '#{Puppet[:certname]}'"
      nil
    end
  end
end