]> git.donarmstrong.com Git - dsa-puppet.git/commitdiff
This should do it
authorStephen Gran <steve@lobefin.net>
Sat, 14 Nov 2009 18:43:33 +0000 (18:43 +0000)
committerStephen Gran <steve@lobefin.net>
Sat, 14 Nov 2009 18:43:33 +0000 (18:43 +0000)
Signed-off-by: Stephen Gran <steve@lobefin.net>
files/etc/puppet/lib/puppet/parser/functions/allnodeinfo.rb
files/etc/puppet/lib/puppet/parser/functions/ldapinfo.rb
files/etc/puppet/lib/puppet/parser/functions/nodeinfo.rb

index 9a7d8c4f0f7a5ca9af569abeb00f7d38b15c3684..b38da346fb42615a838bdec0d01bbeeba805082a 100644 (file)
@@ -1,5 +1,6 @@
 module Puppet::Parser::Functions
   newfunction(:allnodeinfo, :type => :rvalue) do |attributes|
-    return function_ldapinfo('*', attributes)
+    require '/etc/puppet/lib/puppet/parser/functions/ldapinfo.rb'
+    return (function_ldapinfo('*', attributes))
   end
 end
index 23243c04041a7458a760490b44caf75d1cac4466..b8080909c3c13e86163f41b3830729a68ffc0c32 100644 (file)
@@ -18,7 +18,7 @@ module Puppet::Parser::Functions
         unless attributes.include?("*")
           next if attributes.any?{ |a|  not x[a] or x[a].empty? }
         end
-        results[x['hostname']] = x
+        results[host] = x
       end
     rescue LDAP::ResultError
       raise Puppet::ParseError, "LDAP error"
@@ -27,6 +27,10 @@ module Puppet::Parser::Functions
     ensure
       ldap.unbind
     end
-    return( host == '*' ? results : results[host] )
+    if host == '*'
+      return(results)
+    else
+      return(results[host])
+    end
   end
 end
index d8af932a9c5800571d7330bdbfd9516d6e925bcf..2e0521d191c6367069932a667dc2456656f639f8 100644 (file)
@@ -5,8 +5,8 @@ module Puppet::Parser::Functions
     yamlfile = args[1]
     parser.watch_file(yamlfile)
 
-    require 'ldap'
     require 'yaml'
+    require '/etc/puppet/lib/puppet/parser/functions/ldapinfo.rb'
 
     $KCODE = 'utf-8'
 
@@ -44,7 +44,9 @@ module Puppet::Parser::Functions
       end
     end
 
-    results['ldap'] = function_ldapinfo(host, '*')
+    results['ldap'] = []
+    results['ldap'] << function_ldapinfo(host, '*')
+    return(results)
   end
 end