puppetlabs/beaker — pull request #571 by kbarber (2014-12-11 17:52:27+00:00)
Title: WIP: (PDB-1034) Ezbake changes to get PDB source based builds working

This involves a rework of the ezbake_utils to provide more capability to fully
install PuppetDB using these helpers.

* In general, the main API for install_from_ezbake has been kept as it is, but
some arguments are now optional for convenienence
* We now do the lein install process, but using a local maven repository to
avoid collision with other projects running on the same host.
* install_termini_from_ezbake now added to install that component
* The make interface on ezbake has been cleaned up somewhat, so reduce the
amount of extra work the helper has to do. This patch reflects those changes.
* Validate for support up front, this makes the tests easier and the failure
more centralized.
* Automated the retrieval of project name and version if not provided to the
helpers. This suits the case where a project is a singleton as opposed to
a composition.
* ezbake_local_cmd has been added to generalize this kind of system invocation
and simplify testing.
* ezbake_make generalizes the way we invoke make, and simplifies testing.
* install_ezbake_tarball_on_host has been created to generalize this step for
the termini and service based installations to re-use. Its idempotent, in
that it checks to ensure its not already installed.
* conditionally_clone was modified to support being passed a branch if required,
so in the future we can simplify working on a development branch.
* Lots of yarddoc cleanups
* Full rspec coverage

Signed-off-by: Ken Barber