Fixes issue #360; modified puppet broker plugin so that it uses a more widely accepted Bourne-style shell syntax to redirect both stdout and stderr when invoking the '/tmp/puppet_init.sh' script during the broker handoff process.  Previously, this script was invoked using the syntax '|&' to redirect both stdout and stderr to a 'tee' command, now the syntax '2>&1 |' is used instead (which works better with older versions of 'bash' and older versions of other Bourne-style shells)
(#366) Broken dependency on `which` in Debian packaging

The Debian packaging indicates a dependency on the package which, which does
not exist. The correct dependency is on the package debianutils which includes
the which(1) command - except that is an "essential" package, so we shouldn't
depend on it, we should just assume it is present.

This drops the dependency in the obvious way, fixing the problem, and
closing #366 along the way.

Signed-off-by: Daniel Pittman <daniel@rimspace.net>
Merge pull request #367 from daniel-pittman/bug/master/366-incorrect-dependency-for-which-in-debian-packaging

(#366) Broken dependency on `which` in Debian packaging
Support the `mongodb-10gen` database as well as `mongodb`

We generally installed using the upstream 10gen packages of MongoDB, even when
there were distribution packages, with the git modules.  As part of smoothing
the migration between the two we should make the `mongodb-10gen` package
satisfy the dependencies of the Razor package.

That should allow both modes - distribution packaged mongodb, or upstream, to
work correctly as the developer wishes.

This is not an issue on the RPM side of the fence, since their policies forbid
any direct dependency between our package and the storage engine.

This closes #368.

Signed-off-by: Daniel Pittman <daniel@rimspace.net>
Merge pull request #369 from daniel-pittman/bug/master/368-support-mongodb-10gen-package

Support the `mongodb-10gen` database as well as `mongodb`
Merge pull request #364 from tjmcs/tb/fixes-issue-360

Fixes issue #360; redirect of stdout and stderr to 'tee' changed from `|&` to `2>&1 |`
Add a brief document on how to run tests

There was no guidance in the repository about the steps required to run tests,
and those are not completely obvious.  We should improve the tests themselves
to work better, but for now we can get good millage out of documenting
everything at a lower cost.

This closes #370.

Signed-off-by: Daniel Pittman <daniel@rimspace.net>
Support multiple razor install types in acceptance suite

In order to transition smoothly from git to packaged versions of Razor, there
needs to be a period when we support both, so that we don't leave users high
and dry with a broken system.  Even an alpha product like this should care
about user experience at this level.

This enhances the acceptance test installer for Razor to support "package"
install mode, if we ask for `internal-packages` install mode.  The default
remains git, and we can explicitly request that also.

It also configured, in `internal-packages` mode, the internal apt package
repository that contains the artifacts of the last successful internal
package build.

Neither of those is expected to be useful from outside the walls of
Puppet Labs, but the general infrastructure will: when we establish public
package repositories, we will be able to integrate a test mode that uses
those, and ensure that we continue to pass acceptance tests with our packaged
product in the face of external change.

This is part of #307, but not sufficient to complete it.

Signed-off-by: Daniel Pittman <daniel@rimspace.net>
Install the "spec" acceptance test suite to test servers

When we are running our acceptance test suite using packages, we end up
without the "spec" directory - which contains acceptance tests - installed.

That is sensible and correct, but means we need to transfer that from the git
checkout manually in order to actually test the product.

This closes #307.

Signed-off-by: Daniel Pittman <daniel@rimspace.net>
Merge pull request #371 from daniel-pittman/feature/master/307-run-acceptance-test-using-packaged-artifacts

Feature #307 - run acceptance test using packaged artifacts