Puppet Reports » History » Version 16

« Previous - Version 16/25 (diff) - Next » - Current version
khomkrit viangvises, 04/12/2011 06:33 AM

Puppet Reports integration

Note You need Foreman 0.1-1 or newer to support Puppet Reports and the puppet version installed on your foreman host should match the version on your master.


Foreman uses a custom puppet reports (similar to tagmail or store) which simply upload the puppet report to Foreman.
This enables you to see the reports through the web interface as soon as the client finish its run.



Ensure that the puppet clients has the following option in their puppet.conf:

report = true

Without it, no reports will be sent.


  1. copy extras/puppet/foreman/files/foreman-report.rb to your report directory
  2. e.g. /usr/lib/ruby/1.8/puppet/reports/foreman.rb or /var/lib/gems/1.8/gems/puppet-2.6.4/lib/puppet/reports/foreman.rb
  3. make sure you copied the foreman-report.rb to foreman.rb so puppet can find it!
  4. open the new file with your favorite editor
  5. edit the URL (unless you have a DNS alias for foreman already) to point to foreman.
  6. add this report in your puppetmaster reports - e.g, in your master puppet.conf under the main section add:
reports=log, foreman

and restart your puppetmaster

You should start seeing reports coming in under the reports link.

Expire Reports automatically

You would probably want to delete your reports after some time, in order to do so, you would need to set a cronjob:

Available conditions:
  • days => number of days to keep reports (defaults to 7)
  • status => status of the report (defaults to 0 --> "reports with no errors")
  1. Expires all reports regardless of their status
    rake reports:expire days=7 RAILS_ENV="production" 
  2. expires all non interesting reports after one day
    rake reports:expire days=1 status=0 RAILS_ENV="production