#!/bin/bash # shellcheck source=gitea_server-env . "${HOME}"/"${USER}"-env mkdir -p "${HOME}"/backup_logs logFile=${HOME}/backup_logs/$(date +%y_%m).log { echo -e "\n[+] gitea backup\n" mkdir -p /tmp/"${USER}"-backup sudo docker compose -f "${HOME}"/"${USER}"-compose.yaml stop gitea cp -pr "${VOLUME_PATH}"/config /tmp/"${USER}"-backup cp -pr "${VOLUME_PATH}"/data /tmp/"${USER}"-backup # shellcheck disable=SC2024 sudo docker exec -u "${PUID}:${PGID}" -it gitea-postgres sh -c \ 'pg_dumpall -c --if-exists -U gitea' >/tmp/"${USER}"-backup/db.out sudo docker compose -f "${HOME}"/"${USER}"-compose.yaml start gitea if ! rclone copy /tmp/"${USER}"-backup "${BUCKET_PATH}" -v; then curl -Ss \ -H "Title: Gitea" \ -H "Priority: 3" \ -H "Tags: warning,backup" \ -d "Backup not completed" \ "${NOTIF_URL}" rm -rf /tmp/"${USER}"-backup exit 1 fi curl -Ss \ -H "Title: Gitea" \ -H "Priority: 2" \ -H "Tags: heavy_check_mark,backup" \ -d "Backup completed" \ "${NOTIF_URL}" rm -rf /tmp/"${USER}"-backup } &>>"$logFile"