diff options
author | Gabriel Filion <gabster@lelutin.ca> | 2015-03-06 17:47:09 -0500 |
---|---|---|
committer | Gabriel Filion <gabster@lelutin.ca> | 2015-03-06 17:47:09 -0500 |
commit | b2c9640c654b0d9ba2f5949ef53480c855a6d1f0 (patch) | |
tree | 37611e2ca83b20f594ea2d3cbf1316c91437c738 | |
parent | 21d8dc8652a9e8910914940cc439e7a02efbf39e (diff) | |
parent | aaa21c19b69d381becc1d801d6664b71ba0db525 (diff) | |
download | puppet-backupninja-b2c9640c654b0d9ba2f5949ef53480c855a6d1f0.tar.gz puppet-backupninja-b2c9640c654b0d9ba2f5949ef53480c855a6d1f0.tar.bz2 |
Merge remote-tracking branch 'mayfirst/master' into merge_mayfirst
Conflicts:
manifests/mysql.pp
manifests/pgsql.pp
templates/pgsql.conf.erb
-rw-r--r-- | manifests/config.pp | 18 | ||||
-rw-r--r-- | manifests/mysql.pp | 3 | ||||
-rw-r--r-- | templates/backupninja.cron.erb | 6 | ||||
-rw-r--r-- | templates/mysql.conf.erb | 7 | ||||
-rw-r--r-- | templates/pgsql.conf.erb | 8 |
5 files changed, 38 insertions, 4 deletions
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/manifests/mysql.pp b/manifests/mysql.pp index ee2e71d..8e33e8e 100644 --- a/manifests/mysql.pp +++ b/manifests/mysql.pp @@ -18,7 +18,8 @@ define backupninja::mysql( $order = 10, $ensure = present, $user = false, $dbusername = false, $dbpassword = false, $dbhost = 'localhost', $databases = 'all', $backupdir = false, $hotcopy = false, $sqldump = false, $compress = false, $configfile = true, - $vsname = false, $sqldumpoptions = '--lock-tables --complete-insert --add-drop-table --quick --quote-names') + $vsname = false, $sqldumpoptions = '--lock-tables --complete-insert --add-drop-table --quick --quote-names', + $nodata = false) { $real_configfile = $configfile ? { 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 diff --git a/templates/mysql.conf.erb b/templates/mysql.conf.erb index 82dc368..b7ac5e8 100644 --- a/templates/mysql.conf.erb +++ b/templates/mysql.conf.erb @@ -16,3 +16,10 @@ compress = <%= compress ? 'yes' : 'no' %> <% if real_configfile %> configfile = <%= real_configfile %> <% end %> + +<% if nodata.is_a? String -%> +<%= 'nodata = ' + nodata %> +<% elsif nodata.is_a? Array -%> +<%= "nodata = " + nodata.map { |i| "#{i}" }.join(" ") %> +<% end -%> + diff --git a/templates/pgsql.conf.erb b/templates/pgsql.conf.erb index 7781ef4..5ffa89c 100644 --- a/templates/pgsql.conf.erb +++ b/templates/pgsql.conf.erb @@ -4,8 +4,10 @@ vsname = <%= vsname %> <% if backupdir %> backupdir = <%= backupdir %> <% end %> -<% if databases %> -databases = <%= databases %> -<% end %> +<% if databases.is_a? String -%> +<%= 'databases = ' + databases %> +<% elsif databases.is_a? Array -%> +<%= "databases = " + databases.map { |i| "#{i}" }.join(" ") %> +<% end -%> compress = <%= compress ? 'yes' : 'no' %> |