Mercurial > repos > other > Puppet
view modules/mysql/manifests/backup/mysqldump.pp @ 26:58d1818c2ded puppet-3.6
Update MySQL module (which adds "staging" module)
author | IBBoard <dev@ibboard.co.uk> |
---|---|
date | Mon, 09 Mar 2015 01:34:59 +0000 |
parents | |
children | 48d3a1948e4d |
line wrap: on
line source
# See README.me for usage. class mysql::backup::mysqldump ( $backupuser, $backuppassword, $backupdir, $backupdirmode = '0700', $backupdirowner = 'root', $backupdirgroup = 'root', $backupcompress = true, $backuprotate = 30, $ignore_events = true, $delete_before_dump = false, $backupdatabases = [], $file_per_database = false, $ensure = 'present', $time = ['23', '5'], $postscript = false, $execpath = '/usr/bin:/usr/sbin:/bin:/sbin', ) { mysql_user { "${backupuser}@localhost": ensure => $ensure, password_hash => mysql_password($backuppassword), provider => 'mysql', require => Class['mysql::server::root_password'], } mysql_grant { "${backupuser}@localhost/*.*": ensure => $ensure, user => "${backupuser}@localhost", table => '*.*', privileges => [ 'SELECT', 'RELOAD', 'LOCK TABLES', 'SHOW VIEW', 'PROCESS' ], require => Mysql_user["${backupuser}@localhost"], } cron { 'mysql-backup': ensure => $ensure, command => '/usr/local/sbin/mysqlbackup.sh', user => 'root', hour => $time[0], minute => $time[1], require => File['mysqlbackup.sh'], } file { 'mysqlbackup.sh': ensure => $ensure, path => '/usr/local/sbin/mysqlbackup.sh', mode => '0700', owner => 'root', group => 'root', content => template('mysql/mysqlbackup.sh.erb'), } file { 'mysqlbackupdir': ensure => 'directory', path => $backupdir, mode => $backupdirmode, owner => $backupdirowner, group => $backupdirgroup, } }