mirror of
https://github.com/xCyanGrizzly/DragonsStash.git
synced 2026-09-21 13:31:42 +00:00
Wire the backup service against the Synology share over SMB/CIFS (the NAS authenticates with a user/password; NFS is IP-allowlist only). Also fixes three defects found bringing the service up live: - entrypoint crash-loop: dcron's crond fails "setpgid: Operation not permitted" in this runtime -> use busybox crond; make repo-init idempotent (check via `restic cat config`, tolerate init-on-existing) so a transient CIFS/lock hiccup can't kill PID 1. - OOM: pg_dump of a ~276MB DB + tar + restic exceeded the 256M cap -> 1G. - live tar abort: GNU tar exits 1 when TDLib files change mid-read (worker is live); per design this is best-effort, so tolerate exit 1, fatal only >=2. Kuma push is now optional (empty URL disables alerting) since it's deferred. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
12 lines
416 B
Bash
12 lines
416 B
Bash
#!/bin/bash
|
|
set -uo pipefail
|
|
|
|
# Ensure the repo exists, but never crash-loop on it: a transient error reading
|
|
# the repo (CIFS hiccup, stale lock) must not kill PID 1. `restic init` failing
|
|
# because the repo already exists is expected and harmless here.
|
|
if ! restic cat config >/dev/null 2>&1; then
|
|
restic init || echo "restic init skipped (repo already exists or temporarily unreachable)"
|
|
fi
|
|
|
|
exec crond -f -l 2
|