Revert "Merge branch 'nicklewis-fix-puppet-resource-service-test' into stable"

This reverts commit f81c157f23ee637781c7bb1e384c7cb6395bcb27, reversing
changes made to 38d085c697a530192b02c2badcc4e9a73813e62d.

This change set is being reverted a second time because the acceptance
test is failing on Solaris 10 which has very different service names.

I'm reverting it because the failure represents work in progress that is
interrupting other work, even though it is a small regexp.  Based on
discussion, we might simply need to open the regexp up to:

    [10:21 AM] Nick Lewis: @jmccune /.*ssh.*/ perhaps, but that's getting a
    little silly.
(#20383) Provide location of duplicate resource in error

Commit ac83f85 cleaned up Puppet::Error and extracted file and line
presentation into a mixin. However the DuplicateResourceError exception
was relying on that behavior, and when the behavior was extracted the
location of the duplicate resource was lost.

This commit mixes in the ExternalFileError mixin and passes the file
line and number to the exception so that the duplicate resource location
can be displayed.

Thanks to Richard Clamp <richardc@unixbeard.net> for finding the
original error and providing the base for this fix.
Merge branch 'stable'

* stable:
  Revert "Merge branch 'nicklewis-fix-puppet-resource-service-test' into stable"
Merge branch '20383-duplicate_resource_error_location'

This supersedes GH-1619
(maint) Remove empty and pending acceptance test
(maint) Remove pending parser validate test

This test is failing on my Fedora 18 system under test and it has a
"real" copy outside of the pending/ directory.
(maint) Fix uninitialized constant ActiveRecord

Without this patch the Puppet master is reporting error 400 in the
acceptance test suite running against Fedora 18, with the error message
`Could not autoload puppet/indirector/catalog/active_record:
uninitialized constant ActiveRecord`.  This is causing the
`enc_provides_node_when_storeconfigs_enabled.rb` acceptance test to
fail.

The root cause of the problem is attempting to access the ActiveRecord
constant before loading the library.  This patch addresses the problem
by making sure the `activerecord` library is loaded prior to accessing
the constant.

References: https://projects.puppetlabs.com/issues/16670
(maint) Use activerecord 3.0.20 for acceptance testing
(maint) Add Fedora Core suitability check for password redaction

Without this patch the Fedora Core 18 system, prefixed by `fc-` is
assumed to be able to manage password.  This is a problem because the
system does not have the shadow gem installed by default.

This patch adds `fc-` to the list of platforms checked for suitability
before running the acceptance test.
(maint) Remove acceptance test for puppet --parseonly deprecation

Without this patch the acceptance test for the puppet master --parseonly
and puppet agent --parseonly is failing.  This is a problem because in
Puppet 3 the deprecation has been removed and instead Puppet reports an
error that the command line is incorrect, 1 argument was provided
instead of the expected 0 number of arguments.

This patch addresses the problem by changing the acceptance test to no
longer validate the presence of the deprecation warning and instead
validate the expected behavior of `puppet parser validate`.
Merge branch 'fix_acceptance_fedora18' into stable

* fix_acceptance_fedora18:
  (maint) Remove acceptance test for puppet --parseonly deprecation
  (maint) Add Fedora Core suitability check for password redaction
  (maint) Use activerecord 3.0.20 for acceptance testing
  (maint) Fix uninitialized constant ActiveRecord
  (maint) Remove pending parser validate test
  (maint) Remove empty and pending acceptance test

closes #1629
Merge branch 'stable'

* stable:
  (maint) Remove acceptance test for puppet --parseonly deprecation
  (maint) Add Fedora Core suitability check for password redaction
  (maint) Use activerecord 3.0.20 for acceptance testing
  (maint) Fix uninitialized constant ActiveRecord
  (maint) Remove pending parser validate test
  (maint) Remove empty and pending acceptance test

Conflicts:
	lib/puppet/application/apply.rb
Merge branch 'master' of https://github.com/puppetlabs/puppet