]> git.donarmstrong.com Git - dsa-puppet.git/blobdiff - manifests/site.pp
In allnodeinfo distinguish between mandatory and required attributes
[dsa-puppet.git] / manifests / site.pp
index 97df07e7c3695914d83ff1a9c7108ba088c19e69..920ebfa77ec441ffed3bda5a17c69ef88a88ff1e 100644 (file)
@@ -17,7 +17,7 @@ node default {
     $localinfo = yamlinfo('*', "/etc/puppet/modules/debian-org/misc/local.yaml")
     $nodeinfo  = nodeinfo($fqdn, "/etc/puppet/modules/debian-org/misc/local.yaml")
     $hosterinfo = whohosts($nodeinfo, "/etc/puppet/modules/debian-org/misc/hoster.yaml")
-    $keyinfo   = allnodeinfo("sshRSAHostKey", "ipHostNumber", "purpose")
+    $allnodeinfo = allnodeinfo(["sshRSAHostKey", "ipHostNumber"], ["purpose"])
     $mxinfo    = allnodeinfo("mXRecord")
     notice("hoster for ${fqdn} is ${hosterinfo}")
 
@@ -100,7 +100,20 @@ node default {
     case $hostname {
         klecker,ravel,senfl,orff,draghi: { include named::authoritative }
         geo1,geo2,geo3:                  { include named::geodns }
-        franck,liszt,master,samosa,schein,spohr,steffani,widor:   { include named::recursor }
+        franck,liszt,master,samosa,spohr,widor:   { include named::recursor }
+    }
+    case $hostname {
+        ries:   {
+            include unbound
+            $runs_local_resolver = true
+        }
+        default: {
+            $runs_local_resolver = false
+        }
+    }
+    case getfromhash($hosterinfo, 'nameservers') {
+        false:      {}
+        default:    { include resolv }
     }
 
     case $kernel {
@@ -122,9 +135,6 @@ node default {
     case $brokenhosts {
         "true":    { include hosts }
     }
-    case getfromhash($hosterinfo, 'name') {
-        "ubcece", "darmstadt", "ftcollins", "grnet":  { include resolv }
-    }
     case $portforwarder_user_exists {
         "true":    { include portforwarder }
     }