Method: Puppet::Node::Ldap#search
- Defined in:
- lib/vendor/puppet/indirector/node/ldap.rb
#search(request) ⇒ Object
Find more than one node. LAK:NOTE This is a bit of a clumsy API, because the ‘search’ method currently requires a key. It seems appropriate in some cases but not others, and I don’t really know how to get rid of it as a requirement but allow it when desired.
47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 |
# File 'lib/vendor/puppet/indirector/node/ldap.rb', line 47 def search(request) if classes = request.[:class] classes = [classes] unless classes.is_a?(Array) filter = "(&(objectclass=puppetClient)(puppetclass=" + classes.join(")(puppetclass=") + "))" else filter = "(objectclass=puppetClient)" end infos = [] ldapsearch(filter) { |entry| infos << entry2hash(entry, request.[:fqdn]) } return infos.collect do |info| info2node(info[:name], info) end end |