From 0cb07edbbb3952a2c787a15642c93e41bec3c330 Mon Sep 17 00:00:00 2001 From: intrigeri Date: Tue, 23 Apr 2013 17:54:09 +0200 Subject: Install puppetlast cronjob under a usable name. That is, install it as /etc/cron.d/puppetlast, and cleanup the old buggy /etc/cron.d/puppetlast.cron. As cron(8) says about /etc/cron.d/: "For example, any file containing dots will be ignored." --- manifests/puppetmaster/checklastrun.pp | 8 ++++++-- manifests/puppetmaster/checklastrun/disable.pp | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) (limited to 'manifests') diff --git a/manifests/puppetmaster/checklastrun.pp b/manifests/puppetmaster/checklastrun.pp index 5a1b1c8..660c7d9 100644 --- a/manifests/puppetmaster/checklastrun.pp +++ b/manifests/puppetmaster/checklastrun.pp @@ -21,12 +21,16 @@ class puppet::puppetmaster::checklastrun { group => 0, mode => '0700'; - '/etc/cron.d/puppetlast.cron': + '/etc/cron.d/puppetlast': content => "${puppetmaster_lastruncheck_cron} root /usr/local/sbin/puppetlast ${puppet_lastruncheck_timeout_str} ${puppet_lastruncheck_ignorehosts_str} ${$puppet_lastruncheck_additionaloptions}\n", require => File['/usr/local/sbin/puppetlast'], owner => root, group => 0, mode => '0644', - notify => Service['cron'] + notify => Service['cron']; + + # Cleanup cronjob previously installed under a buggy name. + '/etc/cron.d/puppetlast.cron': + ensure => absent; } } diff --git a/manifests/puppetmaster/checklastrun/disable.pp b/manifests/puppetmaster/checklastrun/disable.pp index 8fff212..8559280 100644 --- a/manifests/puppetmaster/checklastrun/disable.pp +++ b/manifests/puppetmaster/checklastrun/disable.pp @@ -5,7 +5,7 @@ class puppet::puppetmaster::checklastrun::disable inherits puppet::puppetmaster: ensure => absent, } - File['/etc/cron.d/puppetlast.cron']{ + File['/etc/cron.d/puppetlast']{ ensure => absent, } } -- cgit v1.2.3 From 38f2b63ff38885542033b709f0d0f3c688fa8949 Mon Sep 17 00:00:00 2001 From: intrigeri Date: Wed, 1 May 2013 11:22:25 +0200 Subject: checklastrun cronjob: only pass output through in imperfect situations. That is, silence it (and avoid nagging the administrators with email) when all hosts are OK, and puppetlast exits with return code 0. --- manifests/puppetmaster/checklastrun.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'manifests') diff --git a/manifests/puppetmaster/checklastrun.pp b/manifests/puppetmaster/checklastrun.pp index 660c7d9..e4278c7 100644 --- a/manifests/puppetmaster/checklastrun.pp +++ b/manifests/puppetmaster/checklastrun.pp @@ -22,7 +22,7 @@ class puppet::puppetmaster::checklastrun { mode => '0700'; '/etc/cron.d/puppetlast': - content => "${puppetmaster_lastruncheck_cron} root /usr/local/sbin/puppetlast ${puppet_lastruncheck_timeout_str} ${puppet_lastruncheck_ignorehosts_str} ${$puppet_lastruncheck_additionaloptions}\n", + content => "${puppetmaster_lastruncheck_cron} root output=\$(/usr/local/sbin/puppetlast ${puppet_lastruncheck_timeout_str} ${puppet_lastruncheck_ignorehosts_str} ${$puppet_lastruncheck_additionaloptions} 2>&1) || echo \"\$output\"\n", require => File['/usr/local/sbin/puppetlast'], owner => root, group => 0, -- cgit v1.2.3