# Create a backup from the database #!/bin/bash set -eu NYAAPANTSU_USERNAME="$1" NYAAPANTSU_PASSWORD="$2" NYAAPANTSU_DB="$3" NYAAPANTSU_PASSPHRASE_FILE="$4" NYAAPANTSU_TRACKER="$5" NYAAPANTSU_DOWNLOADED_DIR="$6" NYAAPANTSU_WATCH_DIR="$7" dump_file="${NYAAPANTSU_DB}_$(date +'%Y_%m_%d_%H_%M').backup" pg_dump -U "${NYAAPANTSU_USERNAME}" -f "${dump_file}" xz -z "${dump_file}" compressed_dump_file="${dump_file}.xz" signature_file="${compressed_dump_file}.sig" gpg2 --batch --yes --passphrase-fd 0 \ --output "${signature_file}" \ --detach-sig "${compressed_dump_file}" < "${NYAAPANTSU_PASSPHRASE_FILE}" mktorrent -a "${NYAAPANTSU_TRACKER}" "${compressed_dump_file}" "${signature_file}" mv "${compressed_dump_file}" "${signature_file}" "${NYAAPANTSU_DOWNLOADED_DIR}" mv "${compressed_dump_file}.torrent" "${NYAAPANTSU_WATCH_DIR}/"