diff options
Diffstat (limited to 'lib/puppet/node')
-rw-r--r-- | lib/puppet/node/environment.rb | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/lib/puppet/node/environment.rb b/lib/puppet/node/environment.rb index 323f2793a..133f22c77 100644 --- a/lib/puppet/node/environment.rb +++ b/lib/puppet/node/environment.rb @@ -69,12 +69,8 @@ class Puppet::Node::Environment # Return all modules from this environment. # Cache the list, because it can be expensive to create. cached_attr(:modules, :ttl => Puppet[:filetimeout]) do - result = [] - Puppet::Module.each_module(modulepath) do |mod| - mod.environment = self - result << mod - end - result + module_names = modulepath.collect { |path| Dir.entries(path) }.flatten.uniq + module_names.collect { |path| Puppet::Module.new(path, self) rescue nil }.compact end def to_s |