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 {
- $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
-
- case $hostname {
- finzi,fano,fasch,field: { include kfreebsd }
- }
-
- case $smartarraycontroller {
- "true": { include debian-proliant }
- }
- 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 getfromhash($nodeinfo, 'heavy_exim') {
- true: { include exim::mx }
- default: { include exim }
- }
- }
- }
-
- 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 {
- klecker,ravel,senfl,orff,draghi: { include named::authoritative }
- geo1,geo2,geo3: { include named::geodns }
- liszt: { include named::recursor }
- }
- case $hostname {
- franck,master,lobos,samosa,spohr,widor: { include unbound }
- }
- case getfromhash($nodeinfo, 'squeeze') {
- true: { include unbound }
- }
- 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 $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
- }
- }
-
- case $kernel {
- Linux: { include entropykey }
- }
+Service {
+ hasrestart => true,
+ hasstatus => true,
+}
+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 dsa_lvm
+ include grub
+ include multipath
+ if $::lsbdistcodename == squeeze {
+ include roles::udldap::client
+ } else {
+ include roles::pubsub::client
+ class { 'roles::udldap::client':
+ ensure => absent
+ }
+ }
+
+ if $::hostname in [ubc-bl7,ubc-bl3,ubc-bl2,ubc-bl6,ubc-bl8,ubc-bl4,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,csail-node01,csail-node02,grnet-node01,grnet-node02] {
+ include ganeti2
+ }
+
+ if $::hostname == 'dinis' {
+ include bacula::director
+ } else {
+ package { 'bacula-console':
+ ensure => purged;
+ }
+
+ file { '/etc/bacula/bconsole.conf':
+ ensure => absent;
+ }
+ }
+
+ if $::hostname == 'storace' {
+ include bacula::storage
+ }
+
+ if $::kernel == Linux {
+ include linux
+ 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 {
+ if !($::hostname in [oyens]) {
+ include apache2
+ }
+ }
+
+ if $::hostname in [geo1,geo2,geo3] {
+ include named::geodns
+ }
+
+ #if $::hostname in [diabelli,nono,tchaikovsky] {
+ # include dacs
+ #}
+
+ if $::hostname in [buxtehude,glinka,milanollo,lw01,lw02,lw03,lw04] {
+ include nfs-server
+ }
+
+ if $::brokenhosts {
+ include hosts
+ }
+
+ if $::portforwarder_user_exists {
+ include portforwarder
+ }
+
+ if $::samhain {
+ include samhain
+ }
+
+ if $::hostname in [geo3,wieck] {
+ include debian-org::radvd
+ }
+
+ if ($::postgres) {
+ include postgres
+ }
+
+ if $::spamd {
+ munin::check { 'spamassassin': }
+ }
+
+ if $::hoster {
+ if $::hoster in [ynic] {
+ include lldp
+ }
+ }
}
-# vim:set et:
-# vim:set sts=4 ts=4:
-# vim:set shiftwidth=4: