summaryrefslogtreecommitdiff
path: root/manifests/irc_bot
diff options
context:
space:
mode:
authormh <mh@immerda.ch>2013-01-02 17:51:29 +0100
committermh <mh@immerda.ch>2013-01-02 17:51:29 +0100
commit2b2268702938453bcece9ebe6070c03929910f8a (patch)
treef7ddfdfaf2430b19dcb7f89b3c16ccf4321976de /manifests/irc_bot
parentdf358dcf15d26ba59b59f686ceee4b07b3aed7dd (diff)
parenta2a80093d42b7e9eec9d2af3c66138f7ceaf9ed6 (diff)
Merge remote-tracking branch 'riseup/master' into HEAD
Conflicts: manifests/apache.pp manifests/base.pp manifests/defaults/templates.pp manifests/defaults/vars.pp manifests/init.pp manifests/irc_bot.pp manifests/nsca/client.pp manifests/nsca/server.pp manifests/service.pp manifests/service/mysql.pp templates/irc_bot/nsa.cfg.erb
Diffstat (limited to 'manifests/irc_bot')
-rw-r--r--manifests/irc_bot/base.pp37
-rw-r--r--manifests/irc_bot/centos.pp9
-rw-r--r--manifests/irc_bot/debian.pp8
-rw-r--r--manifests/irc_bot/disable.pp8
4 files changed, 62 insertions, 0 deletions
diff --git a/manifests/irc_bot/base.pp b/manifests/irc_bot/base.pp
new file mode 100644
index 0000000..5014bcb
--- /dev/null
+++ b/manifests/irc_bot/base.pp
@@ -0,0 +1,37 @@
+class nagios::irc_bot::base {
+ file {
+ '/usr/local/bin/riseup-nagios-client.pl':
+ source => 'puppet:///modules/nagios/irc_bot/riseup-nagios-client.pl',
+ owner => root, group => root, mode => 0755;
+ '/usr/local/bin/riseup-nagios-server.pl':
+ source => 'puppet:///modules/nagios/irc_bot/riseup-nagios-server.pl',
+ owner => root, group => root, mode => 0755;
+ '/etc/init.d/nagios-nsa':
+ content => template("nagios/irc_bot/${::operatingsystem}/nagios-nsa.sh.erb"),
+ require => File['/usr/local/bin/riseup-nagios-server.pl'],
+ owner => root, group => root, mode => 0755;
+ '/etc/nagios_nsa.cfg':
+ ensure => present,
+ content => template('nagios/irc_bot/nsa.cfg.erb'),
+ owner => nagios, group => root, mode => 0400;
+ }
+
+ package { 'libnet-irc-perl':
+ ensure => present,
+ }
+
+ service { "nagios-nsa":
+ ensure => "running",
+ hasstatus => true,
+ require => [ File["/etc/nagios_nsa.cfg"],
+ Package["libnet-irc-perl"],
+ Service['nagios'] ],
+ }
+
+ nagios_command {
+ 'notify-by-irc':
+ command_line => '/usr/local/bin/riseup-nagios-client.pl "$HOSTNAME$ ($SERVICEDESC$) $NOTIFICATIONTYPE$ n.$SERVICEATTEMPT$ $SERVICESTATETYPE$ $SERVICEEXECUTIONTIME$s $SERVICELATENCY$s $SERVICEOUTPUT$ $SERVICEPERFDATA$"';
+ 'host-notify-by-irc':
+ command_line => '/usr/local/bin/riseup-nagios-client.pl "$HOSTNAME$ ($HOSTALIAS$) $NOTIFICATIONTYPE$ n.$HOSTATTEMPT$ $HOSTSTATETYPE$ took $HOSTEXECUTIONTIME$s $HOSTOUTPUT$ $HOSTPERFDATA$ $HOSTLATENCY$s"';
+ }
+}
diff --git a/manifests/irc_bot/centos.pp b/manifests/irc_bot/centos.pp
new file mode 100644
index 0000000..d7b1906
--- /dev/null
+++ b/manifests/irc_bot/centos.pp
@@ -0,0 +1,9 @@
+class nagios::irc_bot::centos inherits nagios::irc_bot::base {
+ Package['libnet-irc-perl']{
+ name => 'perl-Net-IRC',
+ }
+
+ Service['nagios-nsa']{
+ enable => true,
+ }
+}
diff --git a/manifests/irc_bot/debian.pp b/manifests/irc_bot/debian.pp
new file mode 100644
index 0000000..93ea64b
--- /dev/null
+++ b/manifests/irc_bot/debian.pp
@@ -0,0 +1,8 @@
+class nagios::irc_bot::debian inherits nagios::irc_bot::base {
+ exec { "nagios_nsa_init_script":
+ command => "/usr/sbin/update-rc.d nagios-nsa defaults",
+ unless => "/bin/ls /etc/rc3.d/ | /bin/grep nagios-nsa",
+ require => File["/etc/init.d/nagios-nsa"],
+ before => Service['nagios-nsa'],
+ }
+}
diff --git a/manifests/irc_bot/disable.pp b/manifests/irc_bot/disable.pp
new file mode 100644
index 0000000..d6b7c55
--- /dev/null
+++ b/manifests/irc_bot/disable.pp
@@ -0,0 +1,8 @@
+class nagios::irc_bot::disable inherits nagios::irc_bot::base {
+
+ Service['nagios-nsa'] {
+ ensure => stopped,
+ enable => false,
+ }
+
+}