]> git.donarmstrong.com Git - dsa-puppet.git/blob - modules/debian-org/templates/nodeinfo.erb
A test
[dsa-puppet.git] / modules / debian-org / templates / nodeinfo.erb
1 <%
2 require 'ldap'
3 require 'yaml'
4
5 $KCODE = 'utf-8'
6
7 yaml = YAML.load_file("/etc/puppet/modules/debian-org/misc/nodeinfo.yaml")
8
9 results = {}
10 ['nameinfo', 'footer'].each do |detail|
11   if yaml.has_key?(detail)
12     if yaml[detail].has_key?($name)
13       results[detail] = yaml[detail][$name]
14     end
15   end
16 end
17
18 ldap = LDAP::Conn.new('samosa.debian.org')
19
20 results['ldap'] = []
21 filter = '(hostname=' + $name +')'
22 begin
23   ldap.search2('ou=hosts,dc=debian,dc=org', LDAP::LDAP_SCOPE_SUBTREE, filter) do |x|
24     results['ldap'] << x
25   end
26 rescue LDAP::ResultError
27 rescue RuntimeError
28 ensure
29   ldap.unbind
30 end
31 results
32 -%>