X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=manifests%2Fsite.pp;h=4738640d60214832781d7823747abf44edcb1d82;hb=69c19f570b0c7668d1374600a5a7cedaa81fbe2d;hp=d119402a5fdb9dee5396a643f4fdf653f7d90e13;hpb=a5f7988bbf1f8a02c4dc4f5581422994a4996025;p=mirror%2Fdsa-puppet.git diff --git a/manifests/site.pp b/manifests/site.pp index d119402a5..f0699a9e4 100644 --- a/manifests/site.pp +++ b/manifests/site.pp @@ -16,19 +16,17 @@ 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") + $allnodeinfo = allnodeinfo("sshRSAHostKey ipHostNumber", "purpose mXRecord") include munin-node + include syslog-ng include sudo include ssh include debian-org include monit include apt-keys include ntp + include ssl include motd @@ -40,7 +38,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" } @@ -48,104 +51,111 @@ 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': { - include buildd - case $kernel { - Linux: { - include ferm - } - } - } + case $rsyncd { + "true": { include rsyncd-log } } - case $hostname { - klecker,ravel,senfl,orff: { include named::secondary } - geo1,geo2,geo3: { include named::geodns } - bartok,schein,steffani: { include named::recursor } + + case getfromhash($nodeinfo, 'buildd') { + true: { + include buildd + } } case $hostname { - logtest01,geo1,geo2,geo3,bartok,senfl,beethoven,piatti,saens,villa,lobos,raff,gluck,schein,wieck,steffani,ball,handel,tchaikovsky: { include ferm } + 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 { - piatti: { - @ferm::rule { "dsa-udd-stunnel": - description => "port 8080 for udd stunnel", - rule => "&SERVICE_RANGE(tcp, http-alt, ( 192.25.206.16 70.103.162.29 217.196.43.134 ))" - } + ries: { + include unbound + $runs_local_resolver = true } - senfl: { - @ferm::rule { "dsa-rsync": - domain => "(ip ip6)", - description => "Allow rsync access", - rule => "&SERVICE(tcp, 873)" - } + default: { + $runs_local_resolver = false } - saens,villa,lobos,raff,gluck,schein,wieck,steffani: { - @ferm::rule { "dsa-ftp": - domain => "(ip ip6)", - description => "Allow ftp access", - rule => "&SERVICE(tcp, 21)" - } - @ferm::rule { "dsa-rsync": - domain => "(ip ip6)", - description => "Allow rsync access", - rule => "&SERVICE(tcp, 873)" - } - } - ancina,zelenka: { - @ferm::rule { "dsa-time": - description => "Allow time access", - rule => "&SERVICE_RANGE(tcp, time, \$HOST_NAGIOS_V4)" - } - } - handel: { - @ferm::rule { "dsa-puppet": - description => "Allow puppet access", - rule => "&SERVICE_RANGE(tcp, 8140, \$HOST_DEBIAN_V4)" - } - @ferm::rule { "dsa-puppet-v6": - domain => 'ip6', - description => "Allow puppet access", - rule => "&SERVICE_RANGE(tcp, 8140, \$HOST_DEBIAN_V6)" - } + } + 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 + } } + 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: