Merge remote-tracking branch 'rahul/ticket/3.x/15803_zpool_instances' into 3.x

* rahul/ticket/3.x/15803_zpool_instances:
  (#15803) add self.instances to zpool provider
(#15803) Split string for ruby 1.9

Previously, the spec test passed on ruby 1.8, because String includes
the Enumerable module, so that the collect method could be called on the
string. This doesn't work in ruby 1.9.

This commit splits the output of the svcs command on newlines, and then
collects the service instances.
Merge branch 'maint/3.x/15803_break' into 3.x

* maint/3.x/15803_break:
  (#15803) Split string for ruby 1.9
(#10978) add instances to smf

Before the addition of smf instances, the smf service instances were not
present in the `puppet resource service` output. Instead it used to
collect the legacy init.d services. This commit adds the self.instances
method which collects the `svcs` output and parses it to find smf
instances. This commit also adds test cases for this feature.
Merge remote-tracking branch 'rahul/ticket/3.x/10978_smf_instances' into 3.x

* rahul/ticket/3.x/10978_smf_instances:
  (#10978) add instances to smf
(#15804) add zfs instances

Before this commit, `puppet resource zfs` would fail to list any zfs
entries since zfs provider did not provide a self.instances method. This
commit adds the self.instances method to the zfs provider.
Merge pull request #1006 from jeffmccune/bug/3.x/15337_dont_merge_puppet_conf

(#15337) Do not merge user and system puppet.conf
Merge remote-tracking branch 'upstream/3.x'

* upstream/3.x:
  (#10978) add instances to smf
  (#15803) Split string for ruby 1.9
  (#15337) Do not merge user and system puppet.conf
  (Maint) Clean up markdown in README_DEVELOPER
  (Maint) Use $LOAD_PATH instead of $:
  (Maint) Move Trollop inside of Puppet
  (Maint) Add cprice to Git mailmap
  (#15803) add self.instances to zpool provider
Merge remote-tracking branch 'andy/ticket/2.7rc/15471_last_run_report_only_readable_by_root' into 2.7rc

* andy/ticket/2.7rc/15471_last_run_report_only_readable_by_root:
  (#15471) Fix setting mode of last_run_summary
  (#15471) Ensure non-root can read report summary
  Use Win32 API atomic replace in `replace_file`
Merge remote-tracking branch 'upstream/2.7rc' into 2.7.x

* upstream/2.7rc:
  (#15471) Fix setting mode of last_run_summary
  (#15471) Ensure non-root can read report summary
  Use Win32 API atomic replace in `replace_file`
  Add additional commits to CHANGELOG missed in 2.7.19rc1
(#15471) Specify platform appropriate confdir

Previously, the spec test was failing because the `confdir` was set to
`/etc/puppet`, but the expectation was looking for a platform specific
directory, e.g. `C:\Documents and Settings\All Users\...` on Windows.
Merge branch 'maint/3.x/settings-windows' into 3.x

* maint/3.x/settings-windows:
  (#15471) Specify platform appropriate confdir
Merge remote-tracking branch 'upstream/2.7.x' into 3.x

* upstream/2.7.x:
  Fixed #11686 - Updated documentation for exec timeout
  (#15471) Fix setting mode of last_run_summary
  (#15471) Ensure non-root can read report summary
  Use Win32 API atomic replace in `replace_file`
  Add additional commits to CHANGELOG missed in 2.7.19rc1

Conflicts:
	lib/puppet/defaults.rb
	spec/unit/configurer_spec.rb
	spec/unit/util_spec.rb
Merge remote-tracking branch 'upstream/3.x'

* upstream/3.x:
  (#15471) Specify platform appropriate confdir
  Fixed #11686 - Updated documentation for exec timeout
  (#15471) Fix setting mode of last_run_summary
  (#15471) Ensure non-root can read report summary
  Use Win32 API atomic replace in `replace_file`
  Add additional commits to CHANGELOG missed in 2.7.19rc1
Merge remote-tracking branch 'rahul/ticket/3.x/15804_solaris_zfs_instances' into 3.x

* rahul/ticket/3.x/15804_solaris_zfs_instances:
  (#15804) add zfs instances
(#15521) Convert to using host stub wrapper

This patch converts the module acceptance code to using the host stub wrapper
now provided in puppet-acceptance: `stub_forge_on`.

This will allow us to change the forge host we are stubbing dynamically as
apposed to manually changing it everywhere in acceptance code.

This also changes the cases where we have teardown code to use the new
`teardown` block, and to use `rm -rf` for file cleanup to avoid puppet backup
duplication issues.
Update CHANGELOG, conf/redhat/puppet.spec for 2.7.19rc2
Merge branch '2.7rc' into 2.7.x
Don't mask NoMethodErrors

This rescue was masking a bug in a provider (involving calling `[]` on
`nil.NilClass`) with a misleading error message.  The new code asks
permission rather than begging forgiveness, but is more specific to the
problem being detected.
(#10915) Fix tests to work with new parameter checking

The change to how the property checks if the provider can be called
caused several tests to fail because they were not using providers that
were able to properly report `respond_to?`. This fixes those tests. In
the case of the host_spec.rb I was able to convert away from a mock, but
in the mount_spec.rb the mock had to mock `respond_to?` since the
interaction with the provider seems to be more complicated than I can
unravel.