diff options
author | Jerome Charaoui <jcharaoui@cmaisonneuve.qc.ca> | 2015-04-21 09:44:01 -0400 |
---|---|---|
committer | Jerome Charaoui <jcharaoui@cmaisonneuve.qc.ca> | 2015-04-21 09:44:01 -0400 |
commit | 85514f6febcfd93766509f9c529598a7ce5c11e2 (patch) | |
tree | 3652d473ef2c77fc8b8a669a675a2ecf95f55634 /manifests | |
parent | e5a66002f3e912a04e2f879a3a57af43c5e0fe49 (diff) | |
parent | 568c76139e74266ef59e6bb21d74bb643f98dc0e (diff) |
Merge branch 'master' into merge_immerda_new
Conflicts:
manifests/server/cron/backup.pp
Diffstat (limited to 'manifests')
-rw-r--r-- | manifests/server/backup_helpers.pp | 13 | ||||
-rw-r--r-- | manifests/server/base.pp | 25 | ||||
-rw-r--r-- | manifests/server/cron/backup.pp | 7 | ||||
-rw-r--r-- | manifests/server/cron/optimize.pp | 15 |
4 files changed, 38 insertions, 22 deletions
diff --git a/manifests/server/backup_helpers.pp b/manifests/server/backup_helpers.pp index 564e2ab..f9861cf 100644 --- a/manifests/server/backup_helpers.pp +++ b/manifests/server/backup_helpers.pp @@ -1,11 +1,14 @@ # Helpers for mysql servers # In a dedicated class so they can # also be pulled in somewhere else -class mysql::server::backup_helpers{ +class mysql::server::backup_helpers ( + $ensure = present +) { file{'/usr/local/bin/mysql_extract_from_backup': - source => 'puppet:///modules/mysql/backup_helpers/mysql_extract_from_backup.sh', - owner => root, - group => 0, - mode => '0555'; + ensure => $ensure, + source => 'puppet:///modules/mysql/backup_helpers/mysql_extract_from_backup.sh', + owner => root, + group => 0, + mode => '0555'; } } diff --git a/manifests/server/base.pp b/manifests/server/base.pp index ba90520..71f1241 100644 --- a/manifests/server/base.pp +++ b/manifests/server/base.pp @@ -57,17 +57,24 @@ class mysql::server::base { refreshonly => true, } - if $mysql::server::backup_cron { - include mysql::server::cron::backup - include mysql::server::backup_helpers + $backup_ensure = $mysql::server::backup_cron ? { + true => present, + false => absent, } - if $mysql::server::optimize_cron { - class { 'mysql::server::cron::optimize': - optimize_hour => $mysql::server::optimize_hour, - optimize_minute => $mysql::server::optimize_minute, - optimize_day => $mysql::server::optimize_day, - } + class { 'mysql::server::cron::backup': ensure => $backup_ensure } + class { 'mysql::server::backup_helpers': ensure => $backup_ensure } + + $cron_ensure = $mysql::server::optimize_cron ? { + true => present, + false => absent, + } + + class { 'mysql::server::cron::optimize': + ensure => $cron_ensure, + optimize_hour => $mysql::server::optimize_hour, + optimize_minute => $mysql::server::optimize_minute, + optimize_day => $mysql::server::optimize_day, } service { 'mysql': diff --git a/manifests/server/cron/backup.pp b/manifests/server/cron/backup.pp index 2b9dc6c..d19d94d 100644 --- a/manifests/server/cron/backup.pp +++ b/manifests/server/cron/backup.pp @@ -1,5 +1,7 @@ # setup a basic cronjob to backup mysql database -class mysql::server::cron::backup { +class mysql::server::cron::backup ( + $ensure = present, +) { if $mysql::server::manage_backup_dir { file { 'mysql_backup_dir': ensure => directory, @@ -18,7 +20,8 @@ class mysql::server::cron::backup { } cron { 'mysql_backup_cron': - command => $backup_command, + ensure => $ensure, + command => "/usr/bin/mysqldump --default-character-set=utf8 --all-databases --create-options --flush-logs --lock-tables --single-transaction | gzip > ${mysql::server::backup_dir}/mysqldump.sql.gz && chmod 600 ${mysql::server::backup_dir}/mysqldump.sql.gz", user => 'root', minute => 0, hour => 1, diff --git a/manifests/server/cron/optimize.pp b/manifests/server/cron/optimize.pp index 5d4fa98..887906d 100644 --- a/manifests/server/cron/optimize.pp +++ b/manifests/server/cron/optimize.pp @@ -2,18 +2,21 @@ class mysql::server::cron::optimize ( $optimize_hour, $optimize_minute, - $optimize_day + $optimize_day, + $ensure = present, ) { file { 'mysql_optimize_script': - path => '/usr/local/sbin/optimize_mysql_tables.rb', - source => 'puppet:///modules/mysql/scripts/optimize_tables.rb', - owner => root, - group => 0, - mode => '0700'; + ensure => $ensure, + path => '/usr/local/sbin/optimize_mysql_tables.rb', + source => 'puppet:///modules/mysql/scripts/optimize_tables.rb', + owner => root, + group => 0, + mode => '0700'; } cron { 'mysql_optimize_cron': + ensure => $ensure, command => '/usr/local/sbin/optimize_mysql_tables.rb', user => 'root', minute => $optimize_minute, |