X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=manifests%2Fsite.pp;h=920ebfa77ec441ffed3bda5a17c69ef88a88ff1e;hb=fbdfced4d644a867a1913ff13e94fb6851bb8442;hp=9143fb320708c932d9c354e5edcd19222d96d0d4;hpb=9f0b31a2bf096c8e83a30b62c1e562bc2c57820a;p=mirror%2Fdsa-puppet.git diff --git a/manifests/site.pp b/manifests/site.pp index 9143fb320..920ebfa77 100644 --- a/manifests/site.pp +++ b/manifests/site.pp @@ -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") + $allnodeinfo = 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,63 +54,114 @@ 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,schein,steffani,ries,franck,liszt,master: { 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,merikanto,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 } + } + } + } + + case $hostname { + beethoven,ravel,spohr,stabile: { + include nfs-server + } } - include ferm::per-host 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: