Slightly modify ldapinfo, let's see what blows up
authorPeter Palfrader <peter@palfrader.org>
Thu, 2 Sep 2010 14:48:43 +0000 (16:48 +0200)
committerPeter Palfrader <peter@palfrader.org>
Thu, 2 Sep 2010 14:48:43 +0000 (16:48 +0200)
files/etc/puppet/lib/puppet/parser/functions/ldapinfo.rb
files/etc/puppet/lib/puppet/parser/functions/whohosts.rb
modules/exim/templates/manualroute.erb
modules/ferm/templates/defs.conf.erb
modules/motd/templates/motd.erb
modules/munin-node/templates/munin-node.conf.erb
modules/nagios/templates/inc-debian.org.erb
modules/named/templates/named.conf.options.erb
modules/portforwarder/templates/authorized_keys.erb
modules/ssh/templates/authorized_keys.erb

index 3564de3..3a68722 100644 (file)
@@ -19,8 +19,7 @@ module Puppet::Parser::Functions
         unless attributes.include?("*")
           next if attributes.any?{ |a|  not x[a] or x[a].empty? }
         end
-        results[x['hostname'][0]] = []
-        results[x['hostname'][0]] << x
+        results[x['hostname'][0]] = x
       end
     rescue LDAP::ResultError
       raise Puppet::ParseError, "LDAP error"
index e31688b..c2bda8c 100644 (file)
@@ -12,8 +12,8 @@ module Puppet::Parser::Functions
     ans = "unknown"
     yaml = YAML.load_file(yamlfile)
 
-    if (nodeinfo['ldap'].at(0)) and (nodeinfo['ldap'][0].has_key?('ipHostNumber'))
-      nodeinfo['ldap'][0]['ipHostNumber'].each do |addr|
+    if (nodeinfo['ldap'].has_key?('ipHostNumber'))
+      nodeinfo['ldap']['ipHostNumber'].each do |addr|
         yaml.keys.each do |hoster|
           yaml[hoster].each do |net|
             if IPAddr.new(net).include?(addr)
index 4f24170..2b84b4e 100644 (file)
@@ -20,7 +20,7 @@ end
 
 mxregex = Regexp.new('^\d+\s+(.*)\.$')
 mxinfo.keys.sort.each do |host|
-  mxinfo[host][0]['mXRecord'].each do |mx|
+  mxinfo[host]['mXRecord'].each do |mx|
     mxmatch = mxregex.match(mx)
     if mxmatches.include?(mxmatch[1])
       route = host + ":\t\t" + host
index bd298c9..c39b03d 100644 (file)
@@ -19,7 +19,7 @@
   mailrelay = []
   localinfo.keys.sort.each do |node|
       if localinfo[node]['mailrelay']
-          keyinfo[node][0]['ipHostNumber'].each do |ip|
+          keyinfo[node]['ipHostNumber'].each do |ip|
              next if ip =~ /:/
              mailrelay << ip
           end
@@ -33,7 +33,7 @@
   mailrelay = []
   localinfo.keys.sort.each do |node|
       if localinfo[node]['mailrelay']
-          keyinfo[node][0]['ipHostNumber'].each do |ip|
+          keyinfo[node]['ipHostNumber'].each do |ip|
              next if ip =~ /\./
              mailrelay << ip
           end
@@ -49,7 +49,7 @@
   nagii = []
   localinfo.keys.sort.each do |node|
       if localinfo[node]['nagiosmaster'] or localinfo[node]['extranrpeclient']
-          keyinfo[node][0]['ipHostNumber'].each do |ip|
+          keyinfo[node]['ipHostNumber'].each do |ip|
              next if ip =~ /:/
              nagii << ip
           end
@@ -63,7 +63,7 @@
   nagii = []
   localinfo.keys.sort.each do |node|
       if localinfo[node]['nagiosmaster'] or localinfo[node]['extranrpeclient']
-          keyinfo[node][0]['ipHostNumber'].each do |ip|
+          keyinfo[node]['ipHostNumber'].each do |ip|
              next if ip =~ /\./
              nagii << ip
           end
@@ -79,7 +79,7 @@
   munins = []
   localinfo.keys.sort.each do |node|
       if localinfo[node]['muninmaster']
-          keyinfo[node][0]['ipHostNumber'].each do |ip|
+          keyinfo[node]['ipHostNumber'].each do |ip|
              next if ip =~ /:/
              munins << ip
           end
@@ -93,7 +93,7 @@
   munins = []
   localinfo.keys.sort.each do |node|
       if localinfo[node]['muninmaster']
-          keyinfo[node][0]['ipHostNumber'].each do |ip|
+          keyinfo[node]['ipHostNumber'].each do |ip|
              next if ip =~ /\./
              munins << ip
           end
   dbs = []
   localinfo.keys.sort.each do |node|
       if localinfo[node]['dbmaster']
-          keyinfo[node][0]['ipHostNumber'].each do |ip|
+          keyinfo[node]['ipHostNumber'].each do |ip|
              next if ip =~ /\./
              dbs << ip
           end
   dbs = []
   localinfo.keys.sort.each do |node|
       if localinfo[node]['dbmaster']
-          keyinfo[node][0]['ipHostNumber'].each do |ip|
+          keyinfo[node]['ipHostNumber'].each do |ip|
              next if ip =~ /:/
              dbs << ip
           end
 @def $HOST_DEBIAN_V4 = (<%=
   dbs = []
   keyinfo.keys.sort.each do |node|
-      next unless keyinfo[node][0].has_key?('ipHostNumber')
-      keyinfo[node][0]['ipHostNumber'].each do |ip|
+      next unless keyinfo[node].has_key?('ipHostNumber')
+      keyinfo[node]['ipHostNumber'].each do |ip|
          next if ip =~ /:/
          dbs << ip
       end
 @def $HOST_DEBIAN_V6  = (<%=
   dbs = []
   keyinfo.keys.sort.each do |node|
-      next unless keyinfo[node][0].has_key?('ipHostNumber')
-      keyinfo[node][0]['ipHostNumber'].each do |ip|
+      next unless keyinfo[node].has_key?('ipHostNumber')
+      keyinfo[node]['ipHostNumber'].each do |ip|
          next if ip =~ /\./
          dbs << ip
       end
index fbe1180..2b51dce 100644 (file)
@@ -15,28 +15,28 @@ if nodeinfo.has_key?('nameinfo')
 end
 
 purp += 'Welcome to ' + fqdn
-if (nodeinfo['ldap'].at(0)) and (nodeinfo['ldap'][0].has_key?('purpose'))
-  if nodeinfo['ldap'][0]['purpose'].include?('buildd')
+if (nodeinfo['ldap'].has_key?('purpose'))
+  if nodeinfo['ldap']['purpose'].include?('buildd')
     purp += ", the Debian "
-    if nodeinfo['ldap'][0].has_key?('architecture')
-      purp += nodeinfo['ldap'][0]['architecture'][0]
+    if nodeinfo['ldap'].has_key?('architecture')
+      purp += nodeinfo['ldap']['architecture'][0]
     end
     purp += " build daemon\n"
-  elsif nodeinfo['ldap'][0]['purpose'].include?('porterbox')
+  elsif nodeinfo['ldap']['purpose'].include?('porterbox')
     purp += ", the Debian "
-    if nodeinfo['ldap'][0].has_key?('architecture')
-      purp += nodeinfo['ldap'][0]['architecture'][0]
+    if nodeinfo['ldap'].has_key?('architecture')
+      purp += nodeinfo['ldap']['architecture'][0]
     end
     purp += " porterbox\n"
     purp += "\n"
     purp += "See 'dchroot -l' for a list of available chroots.\n"
-    if nodeinfo['ldap'][0].has_key?('admin')
-      purp += "Please contact #{nodeinfo['ldap'][0]['admin'][0]} for install requests,\n"
+    if nodeinfo['ldap'].has_key?('admin')
+      purp += "Please contact #{nodeinfo['ldap']['admin'][0]} for install requests,\n"
       purp += "following the recommendations in <URL:http://dsa.debian.org/doc/install-req/>.\n"
     end
   else
     purp += ", used for the following services:\n"
-    nodeinfo['ldap'][0]['purpose'].sort.each do |l|
+    nodeinfo['ldap']['purpose'].sort.each do |l|
       if l =~ /\[\[(\*|-)?(.*?)\]\]/
         l = $2
       end
index 265b586..231b1a2 100644 (file)
@@ -42,7 +42,7 @@ ignore_file \.rpm(save|new)$
 str = ''
 localinfo.keys.sort.each do |node|
    if localinfo[node]['muninmaster']
-      keyinfo[node][0]['ipHostNumber'].each do |ip|
+      keyinfo[node]['ipHostNumber'].each do |ip|
          str += "allow ^" + ip.split('.').join('\.') + "$\n"
       end
    end
index b8a26d6..bf6c2f9 100644 (file)
@@ -7,7 +7,7 @@
 nagii = []
 localinfo.keys.sort.each do |node|
   if localinfo[node]['nagiosmaster'] or localinfo[node]['extranrpeclient']
-    nagii << keyinfo[node][0]['ipHostNumber']
+    nagii << keyinfo[node]['ipHostNumber']
   end
 end
 
index b7eadf1..84469df 100644 (file)
@@ -8,7 +8,7 @@ acl Nagios {
   str = ''
   localinfo.keys.sort.each do |node|
       if localinfo[node]['nagiosmaster']
-          keyinfo[node][0]['ipHostNumber'].each do |ip|
+          keyinfo[node]['ipHostNumber'].each do |ip|
               str += "\t" + ip + "/32;\n"
           end
       end
index ff38994..985f367 100644 (file)
@@ -29,7 +29,7 @@ config.each_pair do |sourcehost, services|
 
        if allowed_ports.length > 0
                sshkey = getportforwarderkey(sourcehost)
-               remote_ip = keyinfo[sourcehost][0]['ipHostNumber'].join(',')
+               remote_ip = keyinfo[sourcehost]['ipHostNumber'].join(',')
                local_bind = '127.101.%d.%d'%[ (sourcehost.hash / 256 % 256), sourcehost.hash % 256 ]
 
                lines << "# from #{sourcehost}"
index 53681ac..ba6f9f6 100644 (file)
@@ -37,8 +37,8 @@ ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAgEAuGJnElqbhgLtmJp/de8s42cAwKrkAhFq5u8EAkauEv6B
    when "bartok.debian.org", "beethoven.debian.org" then
      out = ''
      keyinfo.keys.sort.each do |node|
-       out += '# ' + keyinfo[node][0]['hostname'].to_s + '
-command="/usr/lib/da-backup/da-backup-ssh-wrap ' + keyinfo[node][0]['hostname'].to_s + '",no-port-forwarding,no-X11-forwarding,no-agent-forwarding,from="' + keyinfo[node][0]['ipHostNumber'].join(',') + '" ' + keyinfo[node][0]['sshRSAHostKey'].to_s + '
+       out += '# ' + keyinfo[node]['hostname'].to_s + '
+command="/usr/lib/da-backup/da-backup-ssh-wrap ' + keyinfo[node]['hostname'].to_s + '",no-port-forwarding,no-X11-forwarding,no-agent-forwarding,from="' + keyinfo[node]['ipHostNumber'].join(',') + '" ' + keyinfo[node]['sshRSAHostKey'].to_s + '
 
 '
      end