aboutsummaryrefslogtreecommitdiffstats
path: root/modules/planet
diff options
context:
space:
mode:
authorDamien Lallement <dams@mageia.org>2011-03-30 12:50:48 +0000
committerDamien Lallement <dams@mageia.org>2011-03-30 12:50:48 +0000
commit5d9e86609337ee9658af1bb991d0927f03c35a05 (patch)
treebe0954c57f586fc4ad4cfadc3dbdcbe8183d12f0 /modules/planet
parent15f55bc6e11f61716eb33774b6cadc5b589eb9d9 (diff)
downloadpuppet-5d9e86609337ee9658af1bb991d0927f03c35a05.tar
puppet-5d9e86609337ee9658af1bb991d0927f03c35a05.tar.gz
puppet-5d9e86609337ee9658af1bb991d0927f03c35a05.tar.bz2
puppet-5d9e86609337ee9658af1bb991d0927f03c35a05.tar.xz
puppet-5d9e86609337ee9658af1bb991d0927f03c35a05.zip
add backup for planet and fix typo on backup-files for blog
Diffstat (limited to 'modules/planet')
-rw-r--r--modules/planet/manifests/init.pp26
-rwxr-xr-xmodules/planet/templates/backup_planet-files.sh23
2 files changed, 49 insertions, 0 deletions
diff --git a/modules/planet/manifests/init.pp b/modules/planet/manifests/init.pp
index 69599bb1..e1e59272 100644
--- a/modules/planet/manifests/init.pp
+++ b/modules/planet/manifests/init.pp
@@ -45,5 +45,31 @@ class planet {
package { ['php-iconv']:
ensure => installed
+ }
+
+ class files_backup inherits base {
+ file { "/var/lib/planet/backup":
+ ensure => directory,
+ owner => root,
+ group => root,
+ mode => 644,
+ }
+
+ file { "backup_planet-files":
+ path => "/usr/local/bin/backup_planet-files.sh",
+ ensure => present,
+ owner => root,
+ group => root,
+ mode => 755,
+ content => template("blog/backup_planet-files.sh")
+ }
+
+ cron { "Backup files (planet)":
+ user => root,
+ hour => '23',
+ minute => '42',
+ command => "/usr/local/bin/backup_planet-files.sh",
+ require => [File["backup_planet-files"]],
+ }
}
}
diff --git a/modules/planet/templates/backup_planet-files.sh b/modules/planet/templates/backup_planet-files.sh
new file mode 100755
index 00000000..45b15596
--- /dev/null
+++ b/modules/planet/templates/backup_planet-files.sh
@@ -0,0 +1,23 @@
+#!/bin/sh
+
+# Initialization
+PATH_TO_FILE=${PATH_TO_FILE:-/var/lib/planet/backup}
+[ ! -f $PATH_TO_FILE/count ] && echo 0 > $PATH_TO_FILE/count
+COUNT=$(cat "$PATH_TO_FILE/count")
+# Backup each locale
+for locale in de en es fr it pl
+do
+ if [ ! -d $PATH_TO_FILE/$locale ]
+ then
+ /bin/mkdir $PATH_TO_FILE/$locale
+ fi
+ rsync -aHP --delete /var/www/html/planet.<%= domain %>/$locale $PATH_TO_FILE/$locale/$locale-$COUNT
+done
+# Check count file to have a week of backup in the directory
+if [ $COUNT -ne 6 ]
+then
+ COUNT=$(expr $COUNT + 1)
+else
+ COUNT="0"
+fi
+echo $COUNT > $PATH_TO_FILE/count