puppetlabs/puppet — pull request #1361 by zaphod42 (2013-01-03 00:28:47+00:00)
Title: (#17371) Re-initialize settings metadata after run_mode determined

Currently metadata for settings (e.g. mode, owner) is initialized during
parsing of the config file, at which point the run_mode isn't known. The
initialization loops over each section of the config and since one of the
sections is determined by the run_mode, this means it doesn't get
searched. Setting file metadata inside a section such as [master] has no
effect.

This patch causes the setting metadata to be set twice - once during early
startup before the run_mode is known (for settings used globally) and
again once the run_mode is known so that configuration in specialised
sections take effect.

Overrides PR #1316