A report processor and dashboard for use with Puppet
Clojure Ruby Puppet
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
manifests Initial working commit Aug 9, 2012
modules/shelf Initial working commit Aug 9, 2012
resources/public/css Initial working commit Aug 9, 2012
src/puppet_shelf Initial working commit Aug 9, 2012
test/puppet_shelf/test Initial working commit Aug 9, 2012
.gitignore Initial working commit Aug 9, 2012
.travis.yml added travis testing Aug 11, 2012
README.md Update readme adding in sample screenshot Aug 9, 2012
Vagrantfile Initial working commit Aug 9, 2012
project.clj
screenshot.png added a sample screenshot Aug 9, 2012

README.md

Puppet Shelf

This project is both a Puppet report processor and a web service that consumes that report and displays in a very visual style the current state of your puppet agents. This focuses on two things I think are important; puppet run time and number of failures during a run. It looks something like this:

Sample Dashboard with five nodes

Usage

The report processor is very simple. It formats the report as a small JSON document and sends it as the payload of an HTTP Post request to a listening service. It can be found in the modules folder, to install just drop the shelf module in your Puppet modules directory.

The service is written in Clojure and uses Redis to store run information. The provided manifests and Vagrantfile should get you up and running with an Ubuntu 12.04 machine if that's your thing. Runnin the service is then as simple as:

lein deps
lein run

License

Copyright (C) 2011 Gareth Rushgrove

Distributed under the Eclipse Public License, the same as Clojure.