Bug #12540
puppet config print generates invalid log settings if puppet.conf doesn't exist
| Status: | Accepted | Start date: | 02/09/2012 | |
|---|---|---|---|---|
| Priority: | Normal | Due date: | ||
| Assignee: | - | % Done: | 0% |
|
| Category: | - | |||
| Target version: | 2.7.x | |||
| Affected Puppet version: | Branch: | |||
| Keywords: | ||||
| Votes: | 0 |
Description
If ~/.puppet/puppet.conf does not exist, then puppet config print generates an invalid config for settings that are based on $vardir/log:
$ rm ~/.puppet/puppet.conf $ puppet config print logdir $vardir/log The Puppet log directory.
Note the value of the logdir property is actually two lines with an embedded newline. Other log settings based on logdir have the same problem:
$ puppet config print all | grep vardir/log httplog = $vardir/logThe Puppet log directory./http.log logdir = $vardir/logThe Puppet log directory. masterhttplog = $vardir/logThe Puppet log directory./masterhttp.log masterlog = $vardir/logThe Puppet log directory./puppetmaster.log puppetdlog = $vardir/logThe Puppet log directory./puppetd.log railslog = $vardir/logThe Puppet log directory./rails.log
Now create an empty puppet.conf and all of the logdir settings use the interpolated value of $vardir/log:
$ touch ~/.puppet/puppet.conf $ puppet config print all | grep vardir/log $ puppet config print logdir /Users/josh/.puppet/var/log
This looks to be an issue with run_mode, see Puppet::Util::RunMode.logopts