X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=manifests%2Fsite.pp;h=7b1af9a57f2798da954d0d1735cf3c01ff62034d;hb=f7d9c31205ea2231f0fa60072f4e90800455c5c9;hp=28db182df7cf3a1a9c93bc417d1a7962ca3e1bf3;hpb=d88d2023f19674bc3785b6078b0861dac67be7a7;p=mirror%2Fdsa-puppet.git diff --git a/manifests/site.pp b/manifests/site.pp index 28db182df..7b1af9a57 100644 --- a/manifests/site.pp +++ b/manifests/site.pp @@ -1,83 +1,138 @@ Package { - require => File["/etc/apt/apt.conf.d/local-recommends"] + require => File['/etc/apt/apt.conf.d/local-recommends'] } File { - owner => root, - group => root, - mode => 444, - ensure => file, + owner => root, + group => root, + mode => '0444', + ensure => file, } Exec { - path => "/usr/bin:/usr/sbin:/bin:/sbin" + path => '/usr/bin:/usr/sbin:/bin:/sbin' } -node default { - include munin-node - include sudo - include debian-org - include monit - include apt-keys - - $nodeinfo = nodeinfo($fqdn, "/etc/puppet/modules/debian-org/misc/local.yaml") - - include motd - include samhain - - case $smartarraycontroller { - "true": { include debian-proliant } - default: {} - } - - case $mta { - "exim4": { - case extractnodeinfo($nodeinfo, 'heavy_exim') { - "true": { include exim::mx } - default: { include exim } - } - } - default: {} - } - - - case $hostname { - spohr: { - include nagios::server - } - default: { - include nagios::client - } - } - - case $apache2 { - "true": { case $hostname { - carver,rore,draghi,tartini,samosa,duarte,piatti: { include apache2 } - default: {} - } } - default: {} - } - - case $hostname { - ancina,arcadelt,argento,brahms,goedel,goetz,lafayette,malo,murphy,praetorius,puccini,paer: - { include buildd } - default: {} - } - -# maybe wait for rietz to be upgraded to lenny -# case $hostname { -# rietz,raff,klecker: -# { include named-secondary } -# default: {} -# } - - case $hostname { - geo1,geo2,geo3: - { include geodns } - default: {} - } +Service { + hasrestart => true, + hasstatus => true, } -node penalosa inherits default { - include hosts +node default { + include site + include munin + include syslog-ng + include sudo + include ssh + include debian-org + include monit + include ntp + include ntpdate + include ssl + include hardware + include nagios::client + include resolv + include roles + include motd + include unbound + include bacula::client + include autofs + include lvm + + if $::hostname in [pasquini,tristano,bertali,boito,rossini,dijkstra,luchesi,byrd,clementi,czerny,bm-bl1,bm-bl2,bm-bl3,bm-bl4,bm-bl5,bm-bl6,bm-bl7,bm-bl8,bm-bl9,bm-bl10,bm-bl11,bm-bl12,bm-bl13,bm-bl14] { + include ganeti2 + } + + if $::hostname in [bm-bl1,bm-bl2,bm-bl3,bm-bl4,bm-bl5,bm-bl6,bm-bl7,bm-bl8,bm-bl9,bm-bl10,bm-bl11,bm-bl12,bm-bl13,bm-bl14,rossini,luchesi,dijkstra] { + include multipath + } + + if $::hostname == 'dinis' { + include bacula::director + } else { + package { 'bacula-console': + ensure => purged; + } + + file { '/etc/bacula/bconsole.conf': + ensure => absent; + } + } + + if $::hostname == 'beethoven' { + include bacula::storage + } + + if $::kernel == Linux { + include linux + if $::kvmdomain { + include acpi + } + } elsif $::kernel == 'GNU/kFreeBSD' { + include kfreebsd + } + + if $::mta == 'exim4' { + if getfromhash($site::nodeinfo, 'heavy_exim') { + include exim::mx + } else { + include exim + } + } elsif $::mta == 'postfix' { + include postfix + } else { + include exim + } + + if $::apache2 { + include apache2 + } + + if $::hostname in [ravel,senfl,orff,draghi,diamond,rietz] { + include named::authoritative + } elsif $::hostname in [geo1,geo2,geo3] { + include named::geodns + } + + if $::hostname in [diabelli,nono,spohr] { + include dacs + } + + if $::hostname in [beethoven,spohr,stabile,beach,glinka,milanollo] { + include nfs-server + } + + if $::hostname == 'vieuxtemps' { + include varnish + } + + if $::brokenhosts { + include hosts + } + + if $::portforwarder_user_exists { + include portforwarder + } + + if $::samhain { + include samhain + } + + if $::hostname in [chopin,geo3,soler,wieck] { + include debian-org::radvd + } + + if ($::postgres) { + include postgres + } + + if $::spamd { + munin::check { 'spamassassin': } + } + + if $::hoster { + if $::hoster in [ynic] { + include lldp + } + } }