]> git.donarmstrong.com Git - dsa-puppet.git/blobdiff - modules/munin/manifests/init.pp
make the lint gods happy
[dsa-puppet.git] / modules / munin / manifests / init.pp
index 1ba4477a02d789e81b57231892f6400915946eb6..9684a2944424c25ab09ebcf5734217c0e0cf1a73 100644 (file)
@@ -9,8 +9,27 @@ class munin {
                require => Package['munin-node'],
        }
 
+       $owner = $::lsbdistcodename ? {
+               squeeze => munin,
+               wheezy  => root,
+               undef => munin,
+       }
+
+       $gid = $::lsbdistcodename ? {
+               squeeze => adm,
+               wheezy  => 'www-data',
+               undef => adm,
+       }
+
+       file { '/var/log/munin':
+               ensure => directory,
+               owner  => $owner,
+               group  => $gid,
+               mode   => '0755',
+       }
+
        file { '/etc/munin/munin-node.conf':
-               content => template('munin/munin-node.conf.erb')
+               content => template('munin/munin-node.conf.erb'),
                require => Package['munin-node'],
                notify  => Service['munin-node'],
        }
@@ -30,14 +49,31 @@ class munin {
 
        @ferm::rule { 'dsa-munin-v4':
                description     => 'Allow munin from munin master',
-               rule            => 'proto tcp mod state state (NEW) dport (munin) @subchain 'munin' { saddr (\$HOST_MUNIN_V4 \$HOST_NAGIOS_V4) ACCEPT; }',
+               rule            => 'proto tcp mod state state (NEW) dport (munin) @subchain \'munin\' { saddr ($HOST_MUNIN_V4 $HOST_NAGIOS_V4) ACCEPT; }',
                notarule        => true,
        }
 
        @ferm::rule { 'dsa-munin-v6':
                description     => 'Allow munin from munin master',
                domain          => 'ip6',
-               rule            => 'proto tcp mod state state (NEW) dport (munin) @subchain 'munin' { saddr (\$HOST_MUNIN_V6 \$HOST_NAGIOS_V6) ACCEPT; }',
+               rule            => 'proto tcp mod state state (NEW) dport (munin) @subchain \'munin\' { saddr ($HOST_MUNIN_V6 $HOST_NAGIOS_V6) ACCEPT; }',
                notarule        => true,
        }
+
+       @@munin::master-per-node {
+               $::fqdn:
+                       ipaddress   => $::ipaddress,
+                       munin_async => $::munin_async,
+                       ;
+       }
+
+       if $::munin_async and str2bool($::munin_async) == true {
+               file { '/etc/ssh/userkeys/munin-async':
+                       source => 'puppet:///modules/munin/munin-async-authkeys',
+               }
+       } else {
+               file { '/etc/ssh/userkeys/munin-async':
+                       ensure => 'absent',
+               }
+       }
 }