zammad-docker-compose/containers/zammad-postgresql/backup.sh

43 lines
967 B
Bash
Raw Normal View History

#!/bin/bash
function zammad_backup {
TIMESTAMP="$(date +'%Y%m%d%H%M%S')"
echo "${TIMESTAMP} - backuping zammad..."
# delete old backups
test -d ${BACKUP_DIR} && find ${BACKUP_DIR}/*_zammad_*.gz -type f -mtime +${HOLD_DAYS} -exec rm {} \;
# tar files
tar -czf ${BACKUP_DIR}/${TIMESTAMP}_zammad_files.tar.gz ${ZAMMAD_DIR}
#db backup
pg_dump --dbname=postgresql://postgres@zammad-postgresql:5432/zammad_production | gzip > ${BACKUP_DIR}/${TIMESTAMP}_zammad_db.psql.gz
2017-10-24 21:17:40 +00:00
}
function check_railsserver_available {
2017-10-24 21:17:40 +00:00
# wait for zammad process coming up
until (echo > /dev/tcp/zammad-railsserver/3000) &> /dev/null; do
echo "backup waiting for zammads railsserver to be ready..."
sleep 2
done
}
if [ "$1" = 'zammad-backup' ]; then
check_railsserver_available
2017-10-24 21:17:40 +00:00
while true; do
backup
# wait until next backup
sleep ${BACKUP_SLEEP}
done
fi
2017-10-24 20:50:44 +00:00
if [ "$1" = 'zammad-backup-once' ]; then
check_railsserver_available
2017-10-24 20:50:44 +00:00
2017-10-24 21:17:40 +00:00
backup
2017-10-24 20:50:44 +00:00
fi