ansible/roles/minecraft-paper/templates/backup.sh

31 lines
747 B
Bash

#! /bin/bash
#
# paper-{{ paper_name }}.sh
# Backup script for Minecraft. Meant to be sourced by our main backup script
# Copyright (C) 2020 Vintage Salt <rehashedsalt@cock.li>
#
# Distributed under terms of the MIT license.
#
set -e
export OUTDIR="$BACKUPSDIR/{{ paper_name }}"
# Sanity checks
if [ -z "$BACKUPSDIR" ]; then
log "BACKUPSDIR was undefined. Run the main backup script instead of this one."
return 1
fi
if ! [ -d "$OUTDIR" ]; then
if ! mkdir "$OUTDIR"; then
log "Unable to find or create output directory: $OUTDIR"
return 2
fi
fi
# WE MAKE BACKUP NOW SERGEI
tar czf "$OUTDIR/{{ paper_name }}-$(date -Iseconds)-full.tar.gz" \
--exclude "{{ paper_home }}/{{ paper_name }}/backups" \
"{{ paper_home }}/{{ paper_name }}/"