spohr runs unbound
[mirror/dsa-puppet.git] / manifests / site.pp
index 337f9c5..11ae5c6 100644 (file)
@@ -14,77 +14,149 @@ Exec {
 }
 
 node default {
-    $nodeinfo = nodeinfo($fqdn, "/etc/puppet/modules/debian-org/misc/local.yaml")
+    $localinfo = yamlinfo('*', "/etc/puppet/modules/debian-org/misc/local.yaml")
+    $nodeinfo  = nodeinfo($fqdn, "/etc/puppet/modules/debian-org/misc/local.yaml")
+    $allnodeinfo = allnodeinfo("sshRSAHostKey ipHostNumber", "purpose mXRecord")
+    notice( sprintf("hoster for %s is %s", $fqdn, getfromhash($nodeinfo, 'hoster', 'name') ) )
 
     include munin-node
+    include syslog-ng
     include sudo
     include ssh
     include debian-org
     include monit
     include apt-keys
+    include ntp
+    include ssl
 
     include motd
-    include samhain
+
+    case $hostname {
+        finzi,fano,fasch,field:    { include kfreebsd }
+    }
 
     case $smartarraycontroller {
         "true":    { include debian-proliant }
-        default: {}
+    }
+    case $kvmdomain {
+        "true": {
+            package { acpid: ensure => installed }
+            case getfromhash($nodeinfo, 'squeeze') {
+                true:  { package { acpi-support-base: ensure => installed } }
+            }
+        }
+    }
+    case $mptraid {
+        "true":    { include "raidmpt" }
     }
 
     case $mta {
         "exim4":   {
-             case extractnodeinfo($nodeinfo, 'heavy_exim') {
-                  "true":  { include exim::mx }
+             case getfromhash($nodeinfo, 'heavy_exim') {
+                  true:  { include exim::mx }
                   default: { include exim }
              }
         }
-        default:   {}
+    }
+
+    case getfromhash($nodeinfo, 'puppetmaster') {
+        true: { include puppetmaster }
+    }
+
+    case getfromhash($nodeinfo, 'muninmaster') {
+        true: { include munin-node::master }
+    }
+
+    case getfromhash($nodeinfo, 'nagiosmaster') {
+        true:    { include nagios::server }
+        default: { include nagios::client }
+    }
+
+    case $apache2 {
+         "true":  {
+              case getfromhash($nodeinfo, 'apache2_security_mirror') {
+                     true:    { include apache2::security_mirror }
+              }
+              case getfromhash($nodeinfo, 'apache2_www_mirror') {
+                     true:    { include apache2::www_mirror }
+              }
+              include apache2
+         }
+    }
+
+    case $rsyncd {
+         "true": { include rsyncd-log }
     }
 
 
+    case getfromhash($nodeinfo, 'buildd') {
+         true:  {
+             include buildd
+         }
+    }
+
     case $hostname {
-        spohr: {
-                      include nagios::server
+        klecker,ravel,senfl,orff,draghi: { include named::authoritative }
+        geo1,geo2,geo3:                  { include named::geodns }
+        liszt,widor:                     { include named::recursor }
+    }
+    case $hostname {
+        franck,master,murphy,ries,samosa,spohr:   {
+            include unbound
+            $runs_local_resolver = true
         }
         default: {
-                     include nagios::client
-       }
+            $runs_local_resolver = false
+        }
     }
+    include resolv
 
-     case extractnodeinfo($nodeinfo, 'apache2_defaultconfig') {
-          "true":  { include apache2 }
-           default: { }
-     }
+    case $kernel {
+        Linux: {
+            include ferm
+            include ferm::per-host
+            case $rsyncd {
+                "true": { include ferm::rsync }
+            }
+        }
+    }
 
-     case extractnodeinfo($nodeinfo, 'buildd') {
-          "true":  { include buildd }
-           default: { }
-     }
-     case extractnodeinfo($nodeinfo, 'apache2_security_mirror') {
-          "true":  { include apache2::security_mirror }
-           default: { }
-     }
+    case $hostname {
+        beethoven,ravel,spohr,stabile: {
+            include nfs-server
+        }
+    }
 
+    case $brokenhosts {
+        "true":    { include hosts }
+    }
+    case $portforwarder_user_exists {
+        "true":    { include portforwarder }
+    }
+
+    include samhain
 
-# maybe wait for rietz to be upgraded to lenny
     case $hostname {
-        rietz,raff,klecker:
-                   { include named::secondary }
-        default:   {}
-    }
-
-     case $hostname {
-         geo1,geo2,geo3:
-                    {
-                      include named::geodns
-                      include ntp::server
-                    }
-         default:   {
-                      include ntp::client
-                    }
-     }
-     case $brokenhosts {
-         "true":    { include hosts }
-         default:   {}
-     }
+        byrd,schuetz,tchaikovsky: {
+            include krb
+        }
+        draghi,quantz: {
+            include krb
+            include afs
+        }
+        lamb,locke,rautavaara,rietz: {
+            include krb
+            include afs::server
+        }
+    }
+
+    case $hostname {
+        chopin,geo3,soler,wieck: {
+            include debian-radvd
+        }
+   }
 }
+
+# vim:set et:
+# vim:set sts=4 ts=4:
+# vim:set shiftwidth=4: