/puppet-reporter

A web-based reports application for Puppet

Primary LanguageJavaScriptGNU General Public License v3.0GPL-3.0

Puppet-Reporter tool for viewing and manipulating Puppet Report data

 * This is pre-alpha quality software.  Use at own risk.

SETUP:

 - download Sphinx search engine 0.9.8-rc2 (http://sphinxsearch.com/downloads/sphinx-0.9.8-rc2.tar.gz), build and install
 - install mysql gem.

 Method 1:
 - git clone Facter from reductive labs and install it
 - git clone Puppet (0.24.x branch) from reductive labs

 Method 2:
 - 'rake build_setup' will install vendored copies of puppet and facter for local testing purposes.

 - copy Puppet-Reporter/rails/config/*.example to the non-example filenames (e.g. database.yml.example -> database.yml) and make any necessary changes
 - cd into Puppet-Reporter/rails
 - RAILS_ENV=development rake db:create
 - RAILS_ENV=test rake db:create
 - RAILS_ENV=production rake db:create
 - rake db:migrate
 - rake db:test:prepare
 - rake spec   (with any luck these should all pass)
 - load report data:
   - untar Puppet-Reporter/reports.tgz to Puppet-Reporter/reports/
   - time find ../reports -type f -name '*.yaml' | xargs ruby script/runner script/import_yaml_reports.rb    (and go get lunch :-)
 - rake ts:index (index the database for searching)
 - rake ts:start (start the search daemon)
 - ruby script/server 
 - connect to http://localhost:3000/
 - if you want to load data from a running Puppet instance
   -  update the connection settings in rails/puppet/report/puppet_reporter.rb to point to where your Puppet-Reporter instance can be reached.
   - review and update the environment variable settings at the top of the 'go' script
   - 'sh -x go' and see what happens

----------

Notes to sel(f|ves):

 - a (fully pending) spec is in place describing the data available in the Puppet report objects. 


How to install ruby rrd bindings, if we need them in the future:
 - install rrdtool and Ruby RRD bindings.  On OS X this looks like:
    % sudo port install rrdtool    # purely for getting the dependencies installed
    % sudo port uninstall rrdtool
    % wget http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.2.27.tar.gz
    % tar xfz rrdtool-1.2.27.tar.gz
    % cd rrdtool-1.2.27/
    % ./configure --prefix=/opt/local && make && sudo make install
    % cd bindings/ruby
    % ruby extconf.rb --with-rrd-lib=/opt/local/lib
    % make clean && make && sudo make install
    % ruby test.rb  # with any luck this will run successfully and you'll get a test.png in the directory