summaryrefslogtreecommitdiff
path: root/manifests
diff options
context:
space:
mode:
authorJerome Charaoui <jcharaoui@cmaisonneuve.qc.ca>2015-04-21 09:44:01 -0400
committerJerome Charaoui <jcharaoui@cmaisonneuve.qc.ca>2015-04-21 09:44:01 -0400
commit85514f6febcfd93766509f9c529598a7ce5c11e2 (patch)
tree3652d473ef2c77fc8b8a669a675a2ecf95f55634 /manifests
parente5a66002f3e912a04e2f879a3a57af43c5e0fe49 (diff)
parent568c76139e74266ef59e6bb21d74bb643f98dc0e (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.pp13
-rw-r--r--manifests/server/base.pp25
-rw-r--r--manifests/server/cron/backup.pp7
-rw-r--r--manifests/server/cron/optimize.pp15
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,