Add a product-name setting to the config file

This allows either puppetdb or pe-puppetdb, defaulting to the former.
This will let us know (basically) whether we're running on PE or not,
although it does use the honor system.
(#17839) Disable update checking when product is pe-puppetdb

This will allow us to prevent having individual components of PE
checking for updates at the same time as PE itself.
Don't set product-name on OSS PuppetDB

This setting shouldn't really be tampered with, and "puppetdb" is
already the default. No need to tempt users.
Merge branch 'master' into disable-version-check
Use testutils.logging when capturing log output

This avoids having to rebind logger factory with an atom logger
manually, and prevents the test from having to understand the log
format.
(#17842) Return meaningful errors with invalid resource references

Normally this kind of thing isn't allowed:

    file { '/tmp/foo':
      ensure => present,
      require => Mymodule::foo['bar'],
    }

However puppet lets it slip by when someone uses create resources:

    create_resources('file', { '/usr/local/homeaway/api-favorites-ustst1-jdk/java' => { ensure => present, require => "Mymodule::foo[bar]" }})

With the puppetdb terminus, our relationship checks fail when this kind of
delcaration is used, however in the compiler terminus it slips through because
I believe the comparison is done all in capitals.

Since the parser stops it, it shouldn't be allowed. However, our behaviour is
confusing to the user. This patch adds a more meaningful error message to this
kind of failure, instead of stating that it is a relationship error we stop
earlier with an error about the format.

Signed-off-by: Ken Barber <ken@bob.sh>
Raise Puppet::Error consistently in catalog indirector

Previously we were just raise exceptions with no specific exception, this patch
makes the behaviour consistent across the file. Tests updated also.

Signed-off-by: Ken Barber <ken@bob.sh>
Install EPEL on redhat machines during acceptance tests

This is necessary for sqlite3.
Add crucial -y to sqlite3 package installs
Merge pull request #443 from nicklewis/disable-version-check

Disable version check
Merge pull request #442 from kbarber/ticket/master/17842-raise_correct_error_when_resourceref_invalid

(#17842) Return meaningful errors with invalid resource references
Fix spelling in rspec test

I had fixed 'capitalization' in the code, but not in the test.

Signed-off-by: Ken Barber <ken@bob.sh>
Merge pull request #452 from kbarber/maint/master/spelling_in_rspec_test

Fix spelling in rspec test