Issue #4248 has been updated by Chris Price.

I believe that, as Nigel suggested, that this has been dealt with as part of 
the autoloader and pluginsync work that Patrick and I did for Telly (#7316, 
#11858, #12126, etc.).

We do not alter Ruby's load path to reflect the quirks of our modulepath, but 
pluginsync will sync module content directly into the agent's libdir (which 
**is** in Ruby's load path) in a way that should allow the ruby 'require' 
statements to work as expected.

I would love for someone who is a stakeholder for this (R.I., Jeff) to try it 
out in Telly and let us know if my assessment is incorrect; otherwise I think 
that we can mark this as fixed in 3.0 and close this ticket.
----------------------------------------
Feature #4248: Load "library" plugins that are used by multiple puppet 
functions and delivered via pluginsync
https://projects.puppetlabs.com/issues/4248#change-65511

Author: R.I. Pienaar
Status: Accepted
Priority: Normal
Assignee: 
Category: plumbing
Target version: 2.7.x
Affected Puppet version: 0.25.5
Keywords: 
Branch: 


Because we do not add all module lib directories to Ruby's search path, ruby 
classes that exist only in the modules (because they have not yet been synced 
via pluginsync) cannot be found.  The autoloader correctly loads files from the 
modules, but ruby itself can't load supporting classes.


Old description:

At present we can copy parser functions, types and providers out with plugins 
sync, this works fine.

It seems though we cannot copy out Puppet::Util::* classes - useful for code 
accessed by various parser functions for example.

I need to do something like:

<pre>
require File.dirname(__FILE__) + '/../../util/foo.rb'
</pre>

from a parser function since:

<pre>
require 'puppet/util/foo'
</pre>

doesnt work.

I am also keen to be able to copy out new application classes that will tie 
into the puppet single executable thing, i guess these 2 features might be in 
the same realm.



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