diff options
-rw-r--r-- | manifests/init.pp | 14 | ||||
-rw-r--r-- | templates/changeme.erb | 25 |
2 files changed, 38 insertions, 1 deletions
diff --git a/manifests/init.pp b/manifests/init.pp index 5374ba5..06c0d02 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -22,10 +22,12 @@ class apcupsd( $device = '/dev/ttyS0', $ensure = 'present', $nisip = '127.0.0.1', - $polltime = '60', $onbatterydelay = '6', $batterylevel = '5', $minutes = '3') + $admin = 'root', + $mail = 'mail', + $polltime = '60' ) { package { "apcupsd": @@ -59,6 +61,16 @@ class apcupsd( content => template('apcupsd/apcupsd.conf.erb'), } + file { "/etc/apcupsd/changeme": + ensure => present, + owner => root, + group => root, + mode => 0755, + notify => Service["apcupsd"], + require => File["/etc/apcupsd"], + content => template('apcupsd/changeme.erb'), + } + file { "/etc/default/apcupsd": ensure => present, owner => root, diff --git a/templates/changeme.erb b/templates/changeme.erb new file mode 100644 index 0000000..13cc553 --- /dev/null +++ b/templates/changeme.erb @@ -0,0 +1,25 @@ +#!/bin/sh +# +# THIS FILE IS BEING MANAGED BY PUPPET +# ANY MODIFICATIONS MADE MANUALLY WILL BE OVERWRITTEN +# ON THE NEXT PUPPET RUN +# +# This shell script if placed in /etc/apcupsd +# will be called by /etc/apcupsd/apccontrol when apcupsd +# detects that the battery should be replaced. +# We send an email message to root to notify him. +# +SYSADMIN=<%= admin %> +APCUPSD_MAIL=<%= mail %> + +HOSTNAME=`hostname` +MSG="$HOSTNAME UPS battery needs changing NOW." +# +( + echo "Subject: $MSG" + echo " " + echo "$MSG" + echo " " + /sbin/apcaccess status +) | $APCUPSD_MAIL -s "$MSG" $SYSADMIN +exit 0 |