eximconf: flag mail claiming to be from Debian's webmail administrators
[mirror/dsa-puppet.git] / modules / nagios / manifests / client.pp
index a49aec5..d86b39c 100644 (file)
@@ -1,50 +1,85 @@
 class nagios::client inherits nagios {
-       package {
-               dsa-nagios-nrpe-config: ensure => purged;
-               dsa-nagios-checks: ensure => installed;
-       }
+  package { 'dsa-nagios-nrpe-config':
+    ensure => purged
+  }
+  package { 'dsa-nagios-checks':
+    ensure => installed,
+    tag    => extra_repo,
+  }
 
-       file {
-               "/etc/default/nagios-nrpe-server":
-                       source  => [ "puppet:///nagios/per-host/$fqdn/default",
-                                    "puppet:///nagios/common/default" ],
-                       require => Package["nagios-nrpe-server"],
-                       notify  => Exec["nagios-nrpe-server restart"];
-               "/etc/default/nagios-nrpe":
-                       ensure  => absent,
-                       notify  => Exec["nagios-nrpe-server restart"];
-               "/etc/nagios/nrpe.cfg":
-                       source  => [ "puppet:///nagios/per-host/$fqdn/nrpe.cfg",
-                                    "puppet:///nagios/common/nrpe.cfg" ],
-                       require => Package["nagios-nrpe-server"],
-                       notify  => Exec["nagios-nrpe-server restart"];
-               "/etc/nagios/nrpe.d":
-                       mode    => 755,
-                       require => Package["nagios-nrpe-server"],
-                       ensure  => directory;
-               "/etc/nagios/nrpe.d/debianorg.cfg":
-                       source  => [ "puppet:///nagios/per-host/$fqdn/inc-debian.org",
-                                    "puppet:///nagios/common/inc-debian.org" ],
-                       require => Package["nagios-nrpe-server"],
-                       notify  => Exec["nagios-nrpe-server restart"];
-               "/etc/nagios/nrpe.d/nrpe_dsa.cfg":
-                       source  => [ "puppet:///nagios/dsa-nagios/generated/nrpe_dsa.cfg" ],
-                       require => Package["dsa-nagios-checks"],
-                       notify  => Exec["nagios-nrpe-server restart"];
+  service { 'nagios-nrpe-server':
+    ensure    => running,
+    hasstatus => false,
+    pattern   => 'nrpe',
+  }
 
-               "/etc/nagios/obsolete-packages-ignore":
-                       source  => [ "puppet:///nagios/per-host/$fqdn/obsolete-packages-ignore",
-                                    "puppet:///nagios/common/obsolete-packages-ignore" ],
-                       require => Package["dsa-nagios-checks"];
+  Ferm::Rule::Simple <<| tag == 'nagios-nrpe::server' |>>
 
-               "/etc/nagios/obsolete-packages-ignore.d/hostspecific":
-                       source  => [ "puppet:///nagios/per-host/$fqdn/obsolete-packages-ignore.d-hostspecific",
-                                    "puppet:///nagios/common/obsolete-packages-ignore.d-hostspecific" ],
-                       require => Package["dsa-nagios-checks"];
-       }
+  file { '/etc/default/nagios-nrpe-server':
+    source  => 'puppet:///modules/nagios/common/default',
+    require => Package['nagios-nrpe-server'],
+    notify  => Service['nagios-nrpe-server'],
+  }
+  file { '/etc/default/nagios-nrpe':
+    ensure => absent,
+    notify => Service['nagios-nrpe-server'],
+  }
+  file { '/etc/nagios/':
+    ensure  => directory,
+    recurse => remote,
+    source  => 'puppet:///files/empty/',
+    require => Package['nagios-nrpe-server'],
+    notify  => Service['nagios-nrpe-server'],
+  }
+  file { '/etc/nagios/nrpe.cfg':
+    content => template('nagios/nrpe.cfg.erb'),
+    notify  => Service['nagios-nrpe-server'],
+  }
+  file { '/etc/nagios/nrpe.d':
+    ensure  => directory,
+    recurse => remote,
+    source  => 'puppet:///files/empty/',
+    notify  => Service['nagios-nrpe-server'],
+  }
 
-       exec { "nagios-nrpe-server restart":
-               path        => "/etc/init.d:/usr/bin:/usr/sbin:/bin:/sbin",
-               refreshonly => true,
-       }
+  concat { '/etc/nagios/nrpe.d/debianorg.cfg':
+    ensure_newline => true,
+    warn           => '# This file is maintained with puppet',
+    notify         => Service['nagios-nrpe-server'],
+    mode           => '0444',
+  }
+  concat::fragment { 'nrpe-debian-staticchecks':
+    target  => '/etc/nagios/nrpe.d/debianorg.cfg',
+    content => template('nagios/inc-debian.org.erb'),
+  }
+  Concat::Fragment <<| tag == 'nagios-nrpe::server::debianorg.cfg' |>>
+
+  file { '/etc/nagios/nrpe.d/nrpe_dsa.cfg':
+    source => 'puppet:///modules/nagios/dsa-nagios/generated/nrpe_dsa.cfg',
+    notify => Service['nagios-nrpe-server'],
+  }
+  file { '/etc/nagios/obsolete-packages-ignore':
+    source  => 'puppet:///modules/nagios/common/obsolete-packages-ignore',
+    require => Package['dsa-nagios-checks'],
+  }
+  file { '/etc/nagios/check-libs.conf':
+    source  => 'puppet:///modules/nagios/common/check-libs.conf',
+    require => Package['dsa-nagios-checks'],
+  }
+  file { '/etc/nagios/obsolete-packages-ignore.d/hostspecific':
+    content => template('nagios/obsolete-packages-ignore.d-hostspecific.erb'),
+    require => Package['dsa-nagios-checks'],
+  }
+  file { '/usr/local/sbin/dsa-check-libs':
+    ensure => absent,
+  }
+
+  file { '/etc/cron.d/puppet-nagios-wraps': ensure => absent, }
+  concat::fragment { 'puppet-crontab--nagios--dsa-check-puppet-agent':
+    target  => '/etc/cron.d/puppet-crontab',
+    order   => '010',
+    content => @(EOF)
+      47 * * * * root dsa-wrap-nagios-check -s puppet-agent dsa-check-puppet_agent -d0 -c 28800 -w 18000
+      | EOF
+  }
 }