src.dualinventive.com/devops/ansible/roles/di-backup-client/templates/di-backup.j2

41 lines
1.3 KiB
Django/Jinja
Executable File

#!/bin/bash
# {{ ansible_managed }}
set -e
if [ -z "$1" ]; then
echo "no date received via param";
exit 1;
fi
if [ -e /home/mysqlbackup/backupdbs ]; then
/home/mysqlbackup/backupdbs
fi
BACKUP_DEST="backup@backup01:."
EXCLUDE=""
ROOT_DIRS="etc home"
if [ "`hostname`" == 'src02' ]; then
ROOT_DIRS="etc home"
EXCLUDE="-e /home/git/gitea/data/sessions"
elif [ "`hostname`" == 'ci01' ]; then
ROOT_DIRS="etc var/lib/jenkins"
EXCLUDE="-e /var/lib/jenkins/workspace"
elif [ "`hostname`" == 'jira02' ]; then
ROOT_DIRS="opt/atlassian/atlassian-jira-software-7.12.1-standalone opt/atlassian/atlassian-confluence-6.11.2 var/atlassian/application-data/jira var/atlassian/application-data/confluence home"
EXCLUDE="-e opt/atlassian/atlassian-jira-software-7.12.1-standalone/temp -e opt/atlassian/atlassian-confluence-6.11.2/temp -e var/atlassian/application-data/jira/tmp -e var/atlassian/application-data/confluence/temp"
elif [ "`hostname`" == 'portalprod02' ]; then
ROOT_DIRS="etc var/www home"
EXCLUDE="-e /var/lib/jenkins/workspace"
fi
for dir in $ROOT_DIRS; do
NAME="`echo ${dir} | sed 's/\//-/g'`-$1"
/usr/local/bin/borg create --info --stats --compression lz4 ${BACKUP_DEST}::$NAME /${dir} --one-file-system ${EXCLUDE} 2>&1
done
if [ -e /home/mysqlbackup/backupdbs ]; then
rm -f /home/mysqlbackup/*.sql.gz
fi