From a4025969f8bc00d001ea194e1a86ebe9d3bc682f Mon Sep 17 00:00:00 2001 From: Andrea Dell'Amico Date: Mon, 11 Jan 2016 11:00:55 +0100 Subject: [PATCH] library/roles/mysql: Some fixes to the mysql backup scripts. --- mysql/defaults/main.yml | 2 -- mysql/files/mysql-backup.sh | 1 + mysql/tasks/mysql-backup.yml | 4 ++-- mysql/templates/mysql-backup.cron.j2 | 12 +++++++++++- 4 files changed, 14 insertions(+), 5 deletions(-) diff --git a/mysql/defaults/main.yml b/mysql/defaults/main.yml index ab0e8878..cdea08a8 100644 --- a/mysql/defaults/main.yml +++ b/mysql/defaults/main.yml @@ -44,6 +44,4 @@ mysql_backup_logfile: '{{ mysql_backup_logdir }}/my_backup.log' mysql_backup_retain_copies: 15 mysql_backup_destdir: /var/lib/mysql-backup mysql_backup_exclude_list: "performance_schema" -mysql_backup_crontab_minute: 0 -mysql_backup_crontab_hour: 2 diff --git a/mysql/files/mysql-backup.sh b/mysql/files/mysql-backup.sh index 463bebad..77d69221 100644 --- a/mysql/files/mysql-backup.sh +++ b/mysql/files/mysql-backup.sh @@ -64,6 +64,7 @@ if [ ! -f $LOCKFILE ] ; then echo "$TIMESTAMP" > $TIMESTAMP_LOG rm -f $LOCKFILE else + echo "Old backup still running" > /var/log/mysql-backup.log RETVAL=2 if [ "${MY_BACKUP_USE_NAGIOS}" == "True" ] ; then echo "old backup still running:WARNING" >> $NAGIOS_LOG diff --git a/mysql/tasks/mysql-backup.yml b/mysql/tasks/mysql-backup.yml index f8fe343b..65bf203f 100644 --- a/mysql/tasks/mysql-backup.yml +++ b/mysql/tasks/mysql-backup.yml @@ -1,6 +1,6 @@ --- - name: Install a script that performs mysql dumps - copy: src=mysql-backup.sh dest=/usr/local/bin/mysql-backup owner=root group=root mode=0750 + copy: src=mysql-backup.sh dest=/usr/local/sbin/mysql-backup owner=root group=root mode=0750 tags: [ 'mysql', 'mysql_backup' ] - name: Install the mysql backup defaults @@ -8,5 +8,5 @@ tags: [ 'mysql', 'mysql_backup' ] - name: Cron job that executes mysql nightly backups - copy: src=mysql-backup.cron dest=/etc/cron.d/mysql-backup owner=root group=root mode=0644 + copy: src=mysql-backup.cron dest=/etc/cron.daily/mysql-backup owner=root group=root mode=0755 tags: [ 'mysql', 'mysql_backup' ] diff --git a/mysql/templates/mysql-backup.cron.j2 b/mysql/templates/mysql-backup.cron.j2 index 4586ab68..d32cb67f 100755 --- a/mysql/templates/mysql-backup.cron.j2 +++ b/mysql/templates/mysql-backup.cron.j2 @@ -1 +1,11 @@ -{{ mysql_backup_crontab_minute }} {{ mysql_backup_crontab_hour }} * * * root /usr/local/bin/mysql-backup > /var/log/mysql-backup.log 2>&1 +#!/bin/bash + +LOG_FILE=/var/log/mysql-backup.log +if [ -x /etc/cron.daily/duplicity_backup ] ; then + echo "duplicity backups active. Exiting" > $LOG_FILE + exit 0 +fi + +/usr/local/sbin/mysql-backup > $LOG_FILE 2>&1 + +exit 0