3694ae2a80
The weekday attribute of cron resource will be parse to negetive integer with future parser. This patch is aim to ensure that the value types of cron resouce are valid with future parser.
65 lines
1.7 KiB
Puppet
65 lines
1.7 KiB
Puppet
# See README.me for usage.
|
|
class mysql::backup::xtrabackup (
|
|
$backupuser = '',
|
|
$backuppassword = '',
|
|
$backupdir = '',
|
|
$backupmethod = 'mysqldump',
|
|
$backupdirmode = '0700',
|
|
$backupdirowner = 'root',
|
|
$backupdirgroup = $mysql::params::root_group,
|
|
$backupcompress = true,
|
|
$backuprotate = 30,
|
|
$ignore_events = true,
|
|
$delete_before_dump = false,
|
|
$backupdatabases = [],
|
|
$file_per_database = false,
|
|
$include_triggers = true,
|
|
$include_routines = false,
|
|
$ensure = 'present',
|
|
$time = ['23', '5'],
|
|
$prescript = false,
|
|
$postscript = false,
|
|
$execpath = '/usr/bin:/usr/sbin:/bin:/sbin',
|
|
) {
|
|
|
|
package{ 'percona-xtrabackup':
|
|
ensure => $ensure,
|
|
}
|
|
|
|
cron { 'xtrabackup-weekly':
|
|
ensure => $ensure,
|
|
command => "/usr/local/sbin/xtrabackup.sh ${backupdir}",
|
|
user => 'root',
|
|
hour => $time[0],
|
|
minute => $time[1],
|
|
weekday => '0',
|
|
require => Package['percona-xtrabackup'],
|
|
}
|
|
|
|
cron { 'xtrabackup-daily':
|
|
ensure => $ensure,
|
|
command => "/usr/local/sbin/xtrabackup.sh --incremental ${backupdir}",
|
|
user => 'root',
|
|
hour => $time[0],
|
|
minute => $time[1],
|
|
weekday => '1-6',
|
|
require => Package['percona-xtrabackup'],
|
|
}
|
|
|
|
file { 'mysqlbackupdir':
|
|
ensure => 'directory',
|
|
path => $backupdir,
|
|
mode => $backupdirmode,
|
|
owner => $backupdirowner,
|
|
group => $backupdirgroup,
|
|
}
|
|
|
|
file { 'xtrabackup.sh':
|
|
ensure => $ensure,
|
|
path => '/usr/local/sbin/xtrabackup.sh',
|
|
mode => '0700',
|
|
owner => 'root',
|
|
group => $mysql::params::root_group,
|
|
content => template('mysql/xtrabackup.sh.erb'),
|
|
}
|
|
}
|