From a39dba47b1abaac99ac4b4d6b0f3ab572fa86d94 Mon Sep 17 00:00:00 2001 From: Paul Belanger Date: Sun, 8 Nov 2015 09:59:55 -0500 Subject: [PATCH] Create flock for crontab to avoid mulitple runs Add a flock so we don't run stackalytics-processor again while it is still running. Change-Id: I14c3f401365aeb3f32087706f692eedcf8a2a614 Signed-off-by: Paul Belanger --- manifests/init.pp | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/manifests/init.pp b/manifests/init.pp index 790bc3b..5e4ecd0 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -105,13 +105,23 @@ class stackalytics ( require => Class['pip'], } + file { '/var/run/stackalytics': + ensure => directory, + group => 'stackalytics', + mode => '0644', + owner => 'stackalytics', + } + cron { 'process_stackalytics': user => 'stackalytics', hour => $cron_hour, - command => '/usr/local/bin/stackalytics-processor', + command => 'flock -n /var/run/stackalytics/stackalytics-processor.lock /usr/local/bin/stackalytics-processor', environment => 'PATH=/usr/bin:/bin:/usr/sbin:/sbin', minute => $cron_minute, - require => Exec['install-stackalytics'], + require => [ + Exec['install-stackalytics'], + File['/var/run/stackalytics'], + ], } cron { 'stackalytics_dump_restore':