Issue #3354 has been updated by Daniel Pittman. Description updated Status changed from Unreviewed to Closed
---------------------------------------- Bug #3354: puppet/util/settings/file_setting.rb should internalize strings when checking for AllowedOwners and AllowedGroups https://projects.puppetlabs.com/issues/3354 Author: David Schmitt Status: Closed Priority: Normal Assignee: Category: settings Target version: Affected Puppet version: 0.25.4 Keywords: Branch: On Debian's 0.25.4-2~bpo50+1, the following fails: <pre> config = Puppet::Util::Settings.new config.setdefaults(:reports, :basedir => {:default => @hostdir, :owner => :service, :mode => 0755, :desc => "munin report hack"}) </pre> with this error: <pre> .....: Internal error: The :owner setting for ...: basedir must be either 'root' or 'service', not 'service' </pre> But this works: <pre> config = Puppet::Util::Settings.new config.setdefaults(:reports, :basedir => {:default => @hostdir, :owner => 'service', :mode => 0755, :desc => "munin report hack"}) </pre> The only difference is <code>'service'</code> instead of <code>:service</code>. The error occurs in puppet/util/settings/file_setting.rb: <pre> AllowedOwners = %w{root service} ... unless AllowedOwners.include?(value) </pre> Here's the stacktrace starting from my code: <pre> /usr/lib/ruby/1.8/puppet/util/settings/file_setting.rb:33:in `owner=' /usr/lib/ruby/1.8/puppet/util/settings/setting.rb:44:in `send' /usr/lib/ruby/1.8/puppet/util/settings/setting.rb:44:in `initialize' /usr/lib/ruby/1.8/puppet/util/settings/setting.rb:38:in `each' /usr/lib/ruby/1.8/puppet/util/settings/setting.rb:38:in `initialize' /usr/lib/ruby/1.8/puppet/util/settings.rb:405:in `new' /usr/lib/ruby/1.8/puppet/util/settings.rb:405:in `newsetting' /usr/lib/ruby/1.8/puppet/util/settings.rb:538:in `setdefaults' /usr/lib/ruby/1.8/puppet/util/settings.rb:523:in `each' /usr/lib/ruby/1.8/puppet/util/settings.rb:523:in `setdefaults' </pre> I'd suggest internalizing both the Allowed* arrays and the incoming value. -- You have received this notification because you have either subscribed to it, or are involved in it. To change your notification preferences, please click here: http://projects.puppetlabs.com/my/account -- You received this message because you are subscribed to the Google Groups "Puppet Bugs" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/puppet-bugs?hl=en.
