summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'z-distfiles/scripts-gw-1.0/SVN-mysql')
-rwxr-xr-xz-distfiles/scripts-gw-1.0/SVN-mysql34
1 files changed, 34 insertions, 0 deletions
diff --git a/z-distfiles/scripts-gw-1.0/SVN-mysql b/z-distfiles/scripts-gw-1.0/SVN-mysql
new file mode 100755
index 0000000..5c0d6c2
--- /dev/null
+++ b/z-distfiles/scripts-gw-1.0/SVN-mysql
@@ -0,0 +1,34 @@
+#!/bin/bash
+
+if [ "x$1" == "x--help" ]; then
+ echo "Usage: SVN-mysql /backup/dir mysql-root-pass \"commit message\""
+ echo
+ echo "Dumps all mysql databases into the given /backup/dir/mysql"
+ echo "and subsequently performs a \"svn commit\". So the "
+ echo "backup dir has to be a checkout from an svn repository."
+ exit 0
+fi
+
+LOGFILE=${1}/cronlog
+ERRFILE=${1}/errlog
+BASEDIR=${1}/mysql/
+
+if [ ! -d "${BASEDIR}" ]; then
+ mkdir -p $BASEDIR
+ cd ${1} && svn add mysql
+fi
+
+date > $LOGFILE
+date > $ERRFILE
+
+mysql-dump-all ${2} $BASEDIR
+
+MESSAGE="$3"
+[ ! "$MESSAGE" ] && MESSAGE="Automatic Update"
+cd $BASEDIR >> $LOGFILE 2>> $ERRFILE && svn commit -m "$MESSAGE" >> $LOGFILE 2>> $ERRFILE
+
+cat $LOGFILE
+cat $ERRFILE
+
+rm $LOGFILE
+rm $ERRFILE