]> git.donarmstrong.com Git - dsa-puppet.git/blobdiff - manifests/site.pp
Try setting a var
[dsa-puppet.git] / manifests / site.pp
index d8a717ca8f48bfd410bb4bcfdee3304b6e9e9502..163adde0d509ce386c977bd4622c0e0f68973a6f 100644 (file)
@@ -16,13 +16,13 @@ Exec {
 node default {
     $localinfo = yamlinfo('*', "/etc/puppet/modules/debian-org/misc/local.yaml")
     $nodeinfo  = nodeinfo($fqdn, "/etc/puppet/modules/debian-org/misc/local.yaml")
-    $hoster    = whohosts($nodeinfo, "/etc/puppet/modules/debian-org/misc/hoster.yaml")
-    $keyinfo   = allnodeinfo("sshRSAHostKey", "ipHostNumber")
-    notice("hoster for ${fqdn} is ${hoster}")
-
-    $mxinfo   = allnodeinfo("mXRecord")
+    $hosterinfo = whohosts($nodeinfo, "/etc/puppet/modules/debian-org/misc/hoster.yaml")
+    $keyinfo   = allnodeinfo("sshRSAHostKey", "ipHostNumber", "purpose")
+    $mxinfo    = allnodeinfo("mXRecord")
+    notice("hoster for ${fqdn} is ${hosterinfo}")
 
     include munin-node
+    include syslog-ng
     include sudo
     include ssh
     include debian-org
@@ -41,7 +41,12 @@ node default {
         "true":    { include debian-proliant }
     }
     case $kvmdomain {
-        "true":    { package { acpid: ensure => installed } }
+        "true": {
+            package { acpid: ensure => installed }
+            case getfromhash($nodeinfo, 'squeeze') {
+                true:  { package { acpi-support-base: ensure => installed } }
+            }
+        }
     }
     case $mptraid {
         "true":    { include "raidmpt" }
@@ -49,57 +54,80 @@ node default {
 
     case $mta {
         "exim4":   {
-             case extractnodeinfo($nodeinfo, 'heavy_exim') {
-                  'true':  { include exim::mx }
+             case getfromhash($nodeinfo, 'heavy_exim') {
+                  true:  { include exim::mx }
                   default: { include exim }
              }
         }
     }
 
-    case extractnodeinfo($nodeinfo, 'muninmaster') {
+    case getfromhash($nodeinfo, 'puppetmaster') {
+        true: { include puppetmaster }
+    }
+
+    case getfromhash($nodeinfo, 'muninmaster') {
         true: { include munin-node::master }
     }
 
-    case extractnodeinfo($nodeinfo, 'nagiosmaster') {
+    case getfromhash($nodeinfo, 'nagiosmaster') {
         true:    { include nagios::server }
         default: { include nagios::client }
     }
 
     case $apache2 {
          "true":  {
-              case extractnodeinfo($nodeinfo, 'apache2_security_mirror') {
+              case getfromhash($nodeinfo, 'apache2_security_mirror') {
                      true:    { include apache2::security_mirror }
-                     default: { include apache2 }
               }
+              case getfromhash($nodeinfo, 'apache2_www_mirror') {
+                     true:    { include apache2::www_mirror }
+              }
+              include apache2
          }
     }
 
-    case extractnodeinfo($nodeinfo, 'buildd') {
-         'true':  {
+    case $rsyncd {
+         "true": { include rsyncd-log }
+    }
+
+
+    case getfromhash($nodeinfo, 'buildd') {
+         true:  {
              include buildd
          }
     }
 
     case $hostname {
-        klecker,ravel,senfl,orff: { include named::secondary }
-        geo1,geo2,geo3:           { include named::geodns }
-        bartok,franck,liszt,master,ries,samosa,schein,spohr,steffani:   { include named::recursor }
+        klecker,ravel,senfl,orff,draghi: { include named::authoritative }
+        geo1,geo2,geo3:                  { include named::geodns }
+        franck,liszt,master,samosa,spohr,widor:   { include named::recursor }
     }
-
     case $hostname {
-        cilea,luchesi,paganini,rautavaara,sibelius: {}
+        ries:   {
+            include unbound
+            $runs_local_resolver = true
+        }
         default: {
-             case $kernel {
-                 Linux: {
-                     include ferm
-                 }
-             }
-         }
+            $runs_local_resolver = false
+        }
+    }
+    case getfromhash($hosterinfo, 'nameservers') {
+        false:      {}
+        default:    { include resolv }
+    }
+
+    case $kernel {
+        Linux: {
+            include ferm
+            include ferm::per-host
+            case $rsyncd {
+                "true": { include ferm::rsync }
+            }
+        }
     }
-    include ferm::per-host
 
     case $hostname {
-        beethoven,ravel,spohr: {
+        beethoven,ravel,spohr,stabile: {
             include nfs-server
         }
     }
@@ -107,11 +135,33 @@ node default {
     case $brokenhosts {
         "true":    { include hosts }
     }
-    case $hoster {
-        "ubcece", "darmstadt", "ftcollins", "grnet":  { include resolv }
-    }
     case $portforwarder_user_exists {
         "true":    { include portforwarder }
     }
+
     include samhain
+
+    case $hostname {
+        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: