PDB-128: Support Oracle Java distribution.

On Debian it's possible to package releases from Oracle through
make-jpkg, a utility provided by the java-package package:
https://wiki.debian.org/JavaPackage

This commit adds support for:
 * Detecting Oracle Java 1.7 packaged RE or SDK
 * Satisfy the package requirement of Java by looking for the j2re1.7
   provides that the make-jpkg packages carry, both RE and SDK.

I've left out satisfying the dependency through j2re1.6 as @kbarber
and I agreed that we shouldn't promote the usage of Java 1.6 any
further.
Update supported packages for distros

This page was way out of date, updated to reflect current reality.

Signed-off-by: Ken Barber <ken@bob.sh>
PDB-307 Fix private method rspec failures due to mocha 1.0.0 upgrade

This patch fixes an rspec failure we were having on the terminus due to the
recent bump from mocha from 0.14.1 to 1.0.0.

Previously mocha seems to have been ignoring private method calls for whatever
reason. With the new version of mocha it is throwing exceptions (as it rightly
should).

This patch removes the use of the `private` declaration and converts all of
these methods to be document `@api private` in YARD instead migrating a
language enforcement to a documentation enforcement instead.

As an aside I noticed that char_encoding.rb had a 3 space indent convention,
this has been converted to 2 space as per our standard.

Signed-off-by: Ken Barber <ken@bob.sh>
PDB-307 Move jenkins rspec build script into version control

This patch moves the jenkins rspec build script into our git repository to
be called by jenkins instead of loading up the full script in the job itself.

Signed-off-by: Ken Barber <ken@bob.sh>
Merge pull request #798 from kbarber/ticket/1.5.x/PDB-307-fix_private_method_rspec_failures

PDB-307 Fix private method rspec failures due to mocha 1.0.0 upgrade
PDB-307 Fix ruby-1.8.5 support for using bundler during rspec tests

Ruby 1.8.5 has some limitations in what it supports as far as gems go and
since we have been attempting as part of PDB-307 to use bundler more often
we have hit some problems.

* nokogiri, the version that beaker expects is not supported
* rake > 0.8.7 is also not supported

This patch removes beaker as a dependency while we run the rspec tests. This
will avoid pulling in lots of extra gems and hopefully speed up the whole
thing anyway. I've also applied this to the travis tests to hopefully speed
those up as well.

There is also now a conditional to change the dependencies for `rake` when
applied to a 1.8.5 ruby.

Signed-off-by: Ken Barber <ken@bob.sh>
Merge pull request #799 from kbarber/ticket/1.5.x/PDB-307-fixes_for_ruby185

PDB-307 Fix ruby-1.8.5 support for using bundler during rspec tests
Fixes an issue with missing ruby-devel on EL5 (VirtualBox)
PDB-307 Ensure 'vendor' directory is created for ruby 1.8.5 bundler

Signed-off-by: Ken Barber <ken@bob.sh>
Merge pull request #803 from kbarber/ticket/1.5.x/PDB-307-create_vendor_dir_for_ruby185_bundler

PDB-307 Ensure 'vendor' directory is created for ruby 1.8.5 bundler
PDB-307 Remove usage of bundler for ruby-1.8.5

Bundler times out on ruby-1.8.5. This is probably due to the fact that it is
such an old implementation. We are less concerned with latest gems for 1.8.5
so for now I'm disabling this functionality.

Signed-off-by: Ken Barber <ken@bob.sh>
Merge pull request #804 from kbarber/ticket/1.5.x/PDB-307-nobundler-for-ruby185

PDB-307 Remove usage of bundler for ruby-1.8.5
PDB-307 Use -x for bash scripts for debugging

Signed-off-by: Ken Barber <ken@bob.sh>
PDB-307 Do not use bundler for rspec with ruby-1.8.5

Signed-off-by: Ken Barber <ken@bob.sh>
PDB-306 Switch to using new el5 imgages to fix DNS resolution hassles

This patch switches us to use Ashley Penney's new el5 images.

The problem we were seeing was that dhclient was seeing eth1 up at start up
and trying to use that for its authoritative DHCP interface, thus the box
was not getting correct DNS in /etc/resolv.conf (it was just falling back
to the baked in defaults).

This came down to 'kudzu' trying to add an interface automatically in
/etc/sysconfig/network-scripts/ifcfg-eth1 with dhcp specific details
however, vagrant won't remove this existing configuration when adding a
private network - it will just append.

Removing kudzu from the image did the trick. Now vagrant appending its
configuration will create the desired result.

Signed-off-by: Ken Barber <ken@bob.sh>
Merge branch '1.5.x' into 1.6.x

* 1.5.x:
  PDB-307 Do not use bundler for rspec with ruby-1.8.5
  PDB-307 Use -x for bash scripts for debugging
  PDB-307 Remove usage of bundler for ruby-1.8.5
  PDB-307 Ensure 'vendor' directory is created for ruby 1.8.5 bundler
  PDB-307 Fix ruby-1.8.5 support for using bundler during rspec tests
  PDB-307 Move jenkins rspec build script into version control
  PDB-307 Fix private method rspec failures due to mocha 1.0.0 upgrade
Merge branch '1.6.x'

* 1.6.x:
  PDB-307 Do not use bundler for rspec with ruby-1.8.5
  PDB-307 Use -x for bash scripts for debugging
  PDB-307 Remove usage of bundler for ruby-1.8.5
  PDB-307 Ensure 'vendor' directory is created for ruby 1.8.5 bundler
  PDB-307 Fix ruby-1.8.5 support for using bundler during rspec tests
  PDB-307 Move jenkins rspec build script into version control
  PDB-307 Fix private method rspec failures due to mocha 1.0.0 upgrade
(PDB-313) Fix catalog resource metadata not updating with parameters change

Catalog resource metadata fields like line number, file and exported were
not being updated properly when only one of those fields changed. Tags have
a similar problem, but the bug is not likely to occur in a real environment
(see PDB-332).

This commit issues an update that includes each updated catalog resource
metadata column when a difference in that column's value is found.
(PDB-79) Drop support for Postgres < 8.4

PuppetDB will now log an error and exit if it connects to an instance of Postgres
older than 8.4. Users of older versions will need to upgrade (especially EL 5
users as it defaults to 8.1).  The acceptance tests for EL 5 have been updated
to be explicit about using Postgres 8.4 packages instead.
PDB-127 Remove references to reports being 'experimental'

Reports haven't been really experimental for some time - so this patch removes
any reference to 'experimental' from the formal documentation.

Signed-off-by: Ken Barber <ken@bob.sh>