templates/bin/backup - better protect against failures
I experienced a problem which stopped this backup from running, so let's allow it to fail more gracefully and not leave the backup in a state it can't resume from, if possible.
This commit is contained in:
@@ -5,12 +5,25 @@
|
||||
set -o pipefail
|
||||
set -o errexit
|
||||
|
||||
cd "{{docker_compose_base_dir}}"
|
||||
cd "/opt/docker-compose"
|
||||
|
||||
|
||||
{{docker_compose_cmd}} exec -T -u www-data nextcloud ./occ maintenance:mode --on
|
||||
{{docker_compose_cmd}} down
|
||||
{{docker_compose_cmd}} run --name borgmatic -T --rm borgmatic /backup.sh run
|
||||
{{docker_compose_cmd}} up -d main-services
|
||||
{{docker_compose_cmd}} exec -T -u www-data nextcloud ./occ maintenance:mode --off
|
||||
{{docker_compose_cmd}} run --name borgmatic -T --rm borgmatic /backup.sh check
|
||||
set -vx
|
||||
docker-compose exec -T -u www-data nextcloud ./occ maintenance:mode --on ||
|
||||
echo "WARNING: Couldn't stop nextcloud container, proceeding anyway"
|
||||
docker-compose down --remove-orphans || {
|
||||
echo "ERROR: Couldn't stop docker-compose, restarting and aborting"
|
||||
docker network prune --force
|
||||
docker-compose up -d
|
||||
exit
|
||||
}
|
||||
docker network prune --force # remove dangling networks
|
||||
docker-compose run --name borgmatic -T --rm borgmatic /backup.sh run ||
|
||||
echo "ERROR: Couldn't run borgmatic"
|
||||
docker-compose up -d main-services || {
|
||||
echo "ERROR: couldn't restart docker-compose services, aborting with no services!"
|
||||
exit 1
|
||||
}
|
||||
docker-compose exec -T -u www-data nextcloud ./occ maintenance:mode --off ||
|
||||
echo "Couldn't turn off nextcloud's maintainance mode"
|
||||
docker-compose run --name borgmatic -T --rm borgmatic /backup.sh check ||
|
||||
echo "Couldn't run the bormatic backup check"
|
||||
|
||||
Reference in New Issue
Block a user