From aaa21c19b69d381becc1d801d6664b71ba0db525 Mon Sep 17 00:00:00 2001 From: Jamie McClelland Date: Wed, 30 Mar 2011 10:41:39 -0400 Subject: 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). --- manifests/config.pp | 18 ++++++++++++++++++ templates/backupninja.cron.erb | 6 ++++++ 2 files changed, 24 insertions(+) create mode 100644 templates/backupninja.cron.erb 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 -- cgit v1.2.3