(maint) Change Helper require Path

Prior to this commit, it tried to load the harness using the current
directory using the fact that ruby 1.8.7 added pwd to the load path.
This commit changes that because we are testing it for 1.9.3, which does
not do that.
(maint) Get PE-PuppetDB Acceptance Tests Passing

Prior to this commit, the PE-PuppetDB Acceptance tests were not passing
on the Jenkins job running on jenkins-enterprise. This commit fixes that
in several different fixes mentioned below:

Justins fixes:

- use Puppet Enterprise specific options file since "common" includes FOSS setup suite
- use bash, pe-postgres doenst otherwise have a shell

My Fixes:

- Changing username/pass for database
  - This is a temp solution. A better solution would be to get these
    values from the harness and set dynamically
- Add quotes to password setting
- Test was using wrong hostname. Changing it to rechable_name will fix this problem.

(maint) Change how cert_whitelist deals with files

Prior to this commit, the whitelist was not being used correctly and the
test was failing. This commit hopefully fixes that issue by changing how
grep is used.
(maint) Remove debug puts statements
Migrate acceptance tests to use beaker gem

This patch modifies the acceptance test framework to use the beaker gem, which
has changed quite a lot from the old puppet-acceptance framework which it
originated from.

Changes:

* Since node configuration no longer lives in the harness, relevant
  configuration for nodes, and ec2 templates have been moved into our own
  repository.
* Vagrant/Virtualbox definitions were added, so we now have vagrant based
  testing through beaker!
* A rake task has been added to wrap the execution of beaker,
  providing an environment variable interface for better integration with
  jenkins and other CI tools.
* The system has included documentation now in acceptance/README.md to explain
  how to run the tests, and the various options in
  acceptance/options/README.md have been merged into this file.
* The old --install methodology has now been deprecated, so git installation
  handling has been moved into our own setup stages.
* The old IniFile code has been removed in favour of using the inifile gem, in
  anticipation of a cutover to the puppet master running helpers in beaker.
* An effort to move the puppet installation helpers out of tests and into
  helpers.rb has been made.
* Some setup re-ordering and restructing has occurred to fix some of the
  organisation and ordering issues I was seeing. In particular, the repo
  installation now occurs in its own step.
* We know support the concept of having Puppet installed via a package, even
  though PuppetDB is installed from source.
* In general more work on source based testing, this will need continued
  development as we'll need it for PR testing, but a good start on this has been
  made.
* test_config is now a helper, instead of requiring it for every test.
* Various fixed to redhat_dev_* to support more source based installation work.
* We know flush iptables before we begin, to avoid firewall issues for ec2 and
  vagrant tests.
* Obviously tests have been modified to use the new library locations across
  the board.
* New temporary files have been added to .gitignore.

Signed-off-by: Ken Barber <ken@bob.sh>
(PE-1673) Properly handle malformed order-by input

Prior to this commit, an invalid JSON input for the
'order-by' query paging parameter was causing an
exception to be thrown and an incorrect response to
be returned. This commit adds proper error handling.
Merge pull request #675 from shakedown/bug/burgundy/pe1673-malformed-order-by

(PE-1673) Properly handle malformed order-by input
Fix typo in event status docs

The value that puppet sends us for failed events is `failure`; in
the docs, in several places, we were documenting it as `failed`.
Fix typo in event status docs

The value that puppet sends us for failed events is `failure`; in
the docs, in several places, we were documenting it as `failed`.
Fix typo in event status docs

The value that puppet sends us for failed events is `failure`; in
the docs, in several places, we were documenting it as `failed`.
(PE-1680) Properly validate limit parameter
Properly validate offset parameter
Explicitly return nil
Merge pull request #677 from shakedown/bug/burgundy/pe1680-validate-limit-input

Properly validate limit & offset parameters
Merge pull request #672 from kbarber/ticket-1.3.x-22373-convert-to-beaker

Ticket 1.3.x 22373 convert to beaker
Escape options passed to beaker

Signed-off-by: Ken Barber <ken@bob.sh>
Merge branch 'ticket/1.3.x/escape-cli-options-for-beaker' into 1.3.x

* ticket/1.3.x/escape-cli-options-for-beaker:
  Escape options passed to beaker
Merge branch '1.3.x' into 1.4.x

* 1.3.x:
  Escape options passed to beaker
  Fix typo in event status docs
  Migrate acceptance tests to use beaker gem
  (maint) Remove debug puts statements
  (maint) Get PE-PuppetDB Acceptance Tests Passing
  (maint) Change Helper require Path

Conflicts:
	acceptance/helper.rb
	acceptance/setup/pre_suite/20_install_puppet.rb
	acceptance/tests/import_export/legacy_storeconfigs_import_export.rb
	acceptance/tests/reports/report_storage.rb
	ext/templates/dev/redhat/redhat_dev_postinst.erb
Merge branch '1.4.x' into burgundy

* 1.4.x:
  Escape options passed to beaker
  Fix typo in event status docs
  Fix typo in event status docs
  Migrate acceptance tests to use beaker gem
  (maint) Remove debug puts statements
  (maint) Get PE-PuppetDB Acceptance Tests Passing
  (maint) Change Helper require Path

Conflicts:
	acceptance/tests/reports/report_storage.rb
Merge branch 'burgundy'

* burgundy:
  Escape options passed to beaker
  Explicitly return nil
  Properly validate offset parameter
  (PE-1680) Properly validate limit parameter
  Fix typo in event status docs
  Fix typo in event status docs
  Fix typo in event status docs
  (PE-1673) Properly handle malformed order-by input
  Migrate acceptance tests to use beaker gem
  (maint) Remove debug puts statements
  (maint) Get PE-PuppetDB Acceptance Tests Passing
  (maint) Change Helper require Path