puppetlabs/puppet — pull request #1006 by jeffmccune (2012-08-05 17:46:02+00:00)
Title: (#15337) Do not merge user and system puppet.conf

Puppet 3.x reads settings from both ~/.puppet/puppet.conf and the system
puppet.conf without this patch applied. This is a problem because it
makes it difficult to determine where to load plugins and extensions from
at runtime. Merging the configuration file also makes it more difficult
to explain where a particular setting is taking effect.

This patch makes the intended `puppet.conf` reading behavior the
following:

1: If provided, use explicit puppet.conf in `--confdir`
2: If root, use system puppet.conf
3: Otherwise, use ~/.puppet/puppet.conf

This patch also changes the behavior of rack puppet master applications.
We now intended for the rack configuration file, `config.ru` to explicitly
set `--confdir` to avoid reading from
`~/.puppet/puppet.conf`. Please see the example in
`ext/rack/files/config.ru` for an up to date rack configuration.