Ignore development noise files

Running Razor out of a source checkout puts a bunch of "noise" files on disk.
Git should ignore those, since they never want to make it into the tree.

Signed-off-by: Daniel Pittman <daniel@rimspace.net>
Integrate Razor into the Puppet Acceptance Test framework

This puts in places the tools to run the current rspec tests, which require a
fully running Razor daemon and database, as part of the Puppet acceptance
test framework.

Signed-off-by: Daniel Pittman <daniel@rimspace.net>
Remove support for "old" style slices

All the slices are now new-style, so we can eliminate the conditional and
supporting code.  This makes it easier to see what is going on in the command
dispatch parts of the system.

Signed-off-by: Daniel Pittman <daniel@rimspace.net>
Handle Ruby 1.8.7 unordered maps in tag dispatch

The tag slice didn't handle all the possible cases in the regexp exclusions
for other slices - so we would up deciding that a web request to list tags
actually wanted to get a specific tag by UUID.

This handles that case like the others, using the negative look-ahead
assertion, so that all tests pass on Ubuntu 12.04 / Ruby 1.8.7-p352.

Signed-off-by: Daniel Pittman <daniel@rimspace.net>
Merge pull request #206 from daniel-pittman/feature/master/puppet-acceptance-tests

Integrate with Puppet acceptance tests
Added build status badge to README

Puppet CI now supports a fancy build status badge, showing the 
state of the project in our Jenkins CI system.  This adds the
badge to the main readme.
Create Puppet users after agent installation

The Puppet broker needs to create the users for the agent after gem
installation, as they are not automatically created. This invokes puppet with
the `--mkusers` command line flag to put them in place.

Signed-off-by: Daniel Pittman <daniel@rimspace.net>
Merge pull request #209 from daniel-pittman/patch-1

Added build status badge to README
Merge pull request #210 from daniel-pittman/bug/master/create-puppet-user-on-install

Create Puppet users after agent installation
At some point in the recent past the policy creation changed in a way where #enabled did not evaluate into a bool.

This is causing disabled policies to be treated like they are enabled.

 Since the backend of Razor may return strings instead of bool added a simple force to string (even though it is currently) and compare vs. 'true' as a String.

 This needs to be updated better but this will fix the current issue.
Fixes issue #215 (unclear error output when a "razor tag T_UUID matcher add" [or update, or remove] is invoked from the command line).  This was the result of two errors...the first in the "ProjectRazor::Slice::Base.eval_command method, where an @slice_commands value was used where an @command_hash value should have been used and the second in the definition of the @slice_commands variable for the ProjectRazor::Slice::Tag class, where no default action was provided for three of the branches in this command hash map.  The end result of these two errors was the behavior reported by @lynxbat in issue #215
Get ready to run the performance test suite

This welds the infrastructure to run a performance suite into the acceptance
test plan.  Nothing is implemented yet, but the placeholders are ready to get
everything in order and up to speed.

Signed-off-by: Daniel Pittman <daniel@rimspace.net>
Don't nohup the agent. Change function name to reflect what it does now.
Don't swallow the output - share it with razor

Conflicts:

	lib/project_razor/broker/puppet.rb
Added video link to Readme. Also fixed line wrapping issue on line #11
Merge pull request #213 from lynxbat/master

Fix for disabled policy being evaluated.
Merge pull request #208 from jamezpolley/master

Capture output of puppet_init.sh in a logfile on the node, don't nohup the agent.
Add :test group to Gemfile (exclude testing gems in production).
Implement a C/GLib2 performance test harness

After investigating the alternatives, writing a custom performance test driver
using C and GLib seems like the best option: it allows a custom implementation
that matches exactly our needs, and has good performance with minimal
resource consumption.

This is a naive implementation using threading and blocking network
operations, which seems to have sufficiently good performance.  If it proves
insufficient rewriting to use CURL multi and libev should resolve any issues.

Signed-off-by: Daniel Pittman <daniel@rimspace.net>
Wire up building and running the perftest tool

This hooks up the perftest suite to install our load simulator on the target
system, then compile it up, and run it, along with the infrastructure needed
to do that.

Signed-off-by: Daniel Pittman <daniel@rimspace.net>