Issue #15165 has been updated by Nigel Kersten.

Status changed from Unreviewed to Needs More Information
Assignee set to Daniel Pittman

Daniel, this was by design, right?

The idea was that we wanted faces to be able to reliably use puppet core 
options, so we needed to enforce that faces didn't re-define core options like 
"tags".

If so, then we need to fix this in CP.
----------------------------------------
Bug #15165: Auto loading external faces such as Cloud Provisioner does not work
https://projects.puppetlabs.com/issues/15165#change-65863

Author: Kelsey Hightower
Status: Needs More Information
Priority: High
Assignee: Daniel Pittman
Category: Faces
Target version: 3.0.0
Affected Puppet version: 
Keywords: 
Branch: 


While testing the Cloud Provisioner master branch against Puppet 3.0rc I ran 
into the following issues

    Error: Could not autoload puppet/face/node_aws/bootstrap: "--tags=": 
already defined in puppet
    Error: Could not autoload puppet/face/node_aws/bootstrap: "--tags=": 
already defined in puppet
    Error: Try 'puppet help help help' for usage

This has something to do with the way we are trying to prevent plug-ins from 
loading twice. I get the same issue without my patch. To get things working I 
had to comment out a few lines:

    diff --git a/lib/puppet/interface/option.rb b/lib/puppet/interface/option.rb
    index 3d0a9c3..7c1455f 100644
    --- a/lib/puppet/interface/option.rb
    +++ b/lib/puppet/interface/option.rb
    @@ -28,7 +28,7 @@ class Puppet::Interface::Option
             # jeffweiss 17 april 2012
             name = optparse_to_optionname(item)
             if Puppet.settings.include? name then
    -          raise ArgumentError, "#{item.inspect}: already defined in puppet"
    +          # raise ArgumentError, "#{item.inspect}: already defined in 
puppet"
             end
             if dup = dups[name] then
               raise ArgumentError, "#{item.inspect}: duplicates existing alias 
#{dup.inspect} in #{@parent}"
    diff --git a/lib/puppet/util/autoload.rb b/lib/puppet/util/autoload.rb
    index a06b0fb..ecfaa3c 100644
    --- a/lib/puppet/util/autoload.rb
    +++ b/lib/puppet/util/autoload.rb
    @@ -64,7 +64,7 @@ class Puppet::Util::Autoload
           rescue Exception => detail
             message = "Could not autoload #{name}: #{detail}"
             Puppet.log_exception(detail, message)
    -        raise Puppet::Error, message
    +        # raise Puppet::Error, message
           end
         end



-- 
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.

Reply via email to