From: Jamie McClelland Date: Wed, 30 Mar 2011 14:41:39 +0000 (-0400) Subject: Useful to control when a cron job runs to avoid all servers backing up X-Git-Url: https://gitweb.fluxo.info/?a=commitdiff_plain;h=aaa21c19b69d381becc1d801d6664b71ba0db525;p=puppet-backupninja.git Useful to control when a cron job runs to avoid all servers backing up at the same time. Also, specifying the backupninja command allows for wrapping it in other commands (e.g. to execute it from within a ssh-agent session so that authentication can happen via the monkeysphere). --- diff --git a/manifests/config.pp b/manifests/config.pp index 34e3a0e..89105b3 100644 --- a/manifests/config.pp +++ b/manifests/config.pp @@ -18,3 +18,21 @@ define backupninja::config( mode => 0644 } } + +# Write the backupninja cron job, allowing you to specify an alternate backupninja +# command (if you want to wrap it in any other commands, e.g. to allow it to use +# the monkeysphere for authentication), or a different schedule to run it on. +define backupninja::cron( + $backupninja_cmd = '/usr/sbin/backupninja', + $backupninja_test_cmd = $backupninja_cmd, + $cronfile = "/etc/cron.d/backupninja", + $min = "0", $hour = "*", $dom = "*", $month = "*", + $dow = "*") +{ + file { $cronfile: + content => template('backupninja/backupninja.cron.erb'), + owner => root, + group => root, + mode => 0644 + } +} diff --git a/templates/backupninja.cron.erb b/templates/backupninja.cron.erb new file mode 100644 index 0000000..ec392ca --- /dev/null +++ b/templates/backupninja.cron.erb @@ -0,0 +1,6 @@ +# /etc/cron.d/backupninja -- cron tab entry for package backupninja + +PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin + +# # run backupninja +<%= min %> <%= hour %> <%= dom %> <%= month %> <%= dow %> root if [ -x <%= backupninja_test_cmd %> ]; then <%= backupninja_cmd %>; fi