summaryrefslogtreecommitdiffstats
path: root/lib/puppet/node
diff options
context:
space:
mode:
Diffstat (limited to 'lib/puppet/node')
-rw-r--r--lib/puppet/node/environment.rb8
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