diff options
Diffstat (limited to 'lib/puppet/parser/interpreter.rb')
| -rw-r--r-- | lib/puppet/parser/interpreter.rb | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/lib/puppet/parser/interpreter.rb b/lib/puppet/parser/interpreter.rb index 8a6018b58..9c74934b0 100644 --- a/lib/puppet/parser/interpreter.rb +++ b/lib/puppet/parser/interpreter.rb @@ -65,7 +65,11 @@ module Puppet @usenodes = true end - @nodesources = hash[:NodeSources] || [:file] + @nodesources = [:file] + + if Puppet[:ldapnodes] + @nodesources << :ldap + end @nodesources.each { |source| method = "setup_%s" % source.to_s @@ -129,7 +133,7 @@ module Puppet parent, nodeclasses = self.send(method, node) end - if nodeclasses + if nodeclasses and !nodeclasses.empty? Puppet.info "Found %s in %s" % [node, source] return parent, nodeclasses end @@ -145,6 +149,10 @@ module Puppet ldapconnect() end + if node =~ /\./ + node = node.sub(/\..+/, '') + end + filter = Puppet[:ldapstring] attrs = Puppet[:ldapattrs].split("\s*,\s*") sattrs = attrs.dup @@ -183,7 +191,7 @@ module Puppet attrs.each { |attr| if values = entry.vals(attr) - classes += values + values.each do |v| classes << v end end } end |
