diff options
| author | Sam Scholten | 2025-09-11 16:06:10 +1000 |
|---|---|---|
| committer | Sam Scholten | 2025-09-11 16:06:10 +1000 |
| commit | a7115770e9e377689d9996abe32a28e8db87429d (patch) | |
| tree | 27d08eb347a8b38aeb47b7eb51050a85ff4c7876 /restic_check.sh | |
| download | drestic-a7115770e9e377689d9996abe32a28e8db87429d.tar.gz drestic-a7115770e9e377689d9996abe32a28e8db87429d.zip | |
init
Diffstat (limited to 'restic_check.sh')
| -rwxr-xr-x | restic_check.sh | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/restic_check.sh b/restic_check.sh new file mode 100755 index 0000000..210b11e --- /dev/null +++ b/restic_check.sh @@ -0,0 +1,43 @@ +#!/bin/bash +set -euo pipefail + +echo "--- Initializing Restic Check Script ---" + +# Source environment variables if the file exists +# This script expects RESTIC_ENV_FILE to be set in the environment +# The environment file includes rclone throttling settings to prevent timeouts +# shellcheck source=/dev/null +if [ -f "$RESTIC_ENV_FILE" ]; then + source "$RESTIC_ENV_FILE" + echo "Environment variables loaded from $RESTIC_ENV_FILE" +else + echo "Error: RESTIC_ENV_FILE not found. Please run setup.sh first." >&2 + exit 1 +fi + +# Source common functions +# shellcheck source=/dev/null +source "$(dirname "$0")/common.sh" + +# --- Pre-warm rclone connection --- +pre_warm_connection "Restic Check" + +# --- Exit Trap --- +trap 'notify "Restic Check" "Restic check script finished with exit code $?" $?' EXIT + +# --- Main Logic --- +echo "--- Starting Restic Repository Integrity Check at $(date) ---" + +echo "Running memory-efficient integrity check on repository: $RESTIC_REPOSITORY (1% data subset)..." +restic check \ + --repo "${RESTIC_REPOSITORY}" \ + --password-file "${RESTIC_PASSWORD_FILE}" \ + --read-data-subset 1% \ + --no-cache \ + --verbose || { + echo "Error: Restic check failed." >&2 + notify "Restic Check ($(whoami)@$(hostname))" "Weekly integrity check failed!" 8 + exit 1 +} + +echo "--- Restic Repository Integrity Check finished successfully at $(date) ---" |
