]> gitweb.fluxo.info Git - hydra.git/commitdiff
Adding hydractl backup-restore-{munin,nagios}
authorSilvio Rhatto <rhatto@riseup.net>
Sat, 8 Mar 2014 21:14:57 +0000 (18:14 -0300)
committerSilvio Rhatto <rhatto@riseup.net>
Sat, 8 Mar 2014 21:14:57 +0000 (18:14 -0300)
TODO.md
share/hydractl/backup-restore-munin [new file with mode: 0755]
share/hydractl/backup-restore-nagios [new file with mode: 0755]

diff --git a/TODO.md b/TODO.md
index b2b4e7d4b8419e2687a102d3c3afe2972e874623..a593e26cff0e649f828c552bec2d461f56231fb8 100644 (file)
--- a/TODO.md
+++ b/TODO.md
@@ -12,5 +12,4 @@ Hydractl
 
   - provision: config parser using a custom function with `include` directive, avoiding `source`.
   - backup-restore-site: fix parameters
-  - backup-restore-{munin,nagios}
   - puppet-initialize: initialize a master node from a backup
diff --git a/share/hydractl/backup-restore-munin b/share/hydractl/backup-restore-munin
new file mode 100755 (executable)
index 0000000..3e5fb30
--- /dev/null
@@ -0,0 +1,45 @@
+#!/bin/bash
+#
+# Restore munin data.
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public
+# License along with this program.  If not, see
+# <http://www.gnu.org/licenses/>.
+
+# Load
+source $APP_BASE/lib/hydra/functions || exit 1
+hydra_config_load
+
+# Command line arguments
+BASENAME="`basename $0`"
+
+# Parameters.
+HOST="$1"
+SERVICE="munin"
+SERVICE_DIR="/var/lib/munin"
+SERVICE_USER="munin"
+SERVICE_GROUP="munin"
+
+# Set restore environment.
+hydra_backup_environment_service
+
+# TODO: $SERVICE_DIR
+
+# Remove current folder
+rm -rf $SERVICE_DIR
+
+# Copy site folder from backup.
+cp -a $RESTOREDIR/$SERVICE_DIR $SERVICE_DIR
+
+# Fix permissions.
+chown -R $SERVICE_USER.$SERVICE_GROUP $SERVICE_DIR
diff --git a/share/hydractl/backup-restore-nagios b/share/hydractl/backup-restore-nagios
new file mode 100755 (executable)
index 0000000..833efd9
--- /dev/null
@@ -0,0 +1,52 @@
+#!/bin/bash
+#
+# Restore nagios data.
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public
+# License along with this program.  If not, see
+# <http://www.gnu.org/licenses/>.
+
+# Load
+source $APP_BASE/lib/hydra/functions || exit 1
+hydra_config_load
+
+# Command line arguments
+BASENAME="`basename $0`"
+
+# Parameters.
+HOST="$1"
+SERVICE="nagios3"
+SERVICE_DIR="/var/lib/nagios3"
+SERVICE_USER="nagios"
+SERVICE_GROUP="apache2"
+
+# Set restore environment.
+hydra_backup_environment_service
+
+# TODO: Backup $SERVICE_DIR
+
+# Stop services
+/etc/init.d/$service stop
+
+# Remove current folder
+rm -rf $SERVICE_DIR
+
+# Copy site folder from backup.
+cp -a $RESTOREDIR/$SERVICE_DIR $SERVICE_DIR
+
+# Fix permissions.
+chown -R $SERVICE_USER.$SERVICE_GROUP $SERVICE_DIR
+chown -R $SERVICE_USER.$SERVICE_USER $SERVICE_DIR/spool
+
+# Start services
+/etc/init.d/$service start