镜像站点 · 本页由第三方 GitHub 只读镜像提供,非 GitHub 官方站点,不接受任何登录或凭据输入。前往 github.com
Skip to content

Commit c8a4d4e

Browse files
committed
fix(backup): order mail recovery after queued host verification
1 parent d36005a commit c8a4d4e

2 files changed

Lines changed: 12 additions & 0 deletions

File tree

‎ops/production/README.md‎

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,3 +19,8 @@ Checks: `python3 test-preserve-backups.py` on Linux as root, shell syntax checks
1919
ReviewOS uses a separate private, versioned `reviewos-production` bucket in `hel1`, declared in its `cloud/object-storage.ts`. The shared host's existing operator credential can be installed into the app's private credential file using `reviewos-credentials.py --source <protected-S3-env-file>`. It never emits credentials or overwrites a different key pair. Prefer a dedicated project credential when rotating keys; the current trusted application processes already run as root on this host. Keep the backup bucket and its snapshots untouched.
2020

2121
`install-preserving.py --apply` checks all operator baselines first, saves prior versions, installs the companion systemd declarations and reloads systemd. The declarations preserve app/mail backup history, put staging behind the required volume and make automated capacity maintenance read-only. The PostgreSQL declaration requires the logging volume before startup.
22+
23+
Mail restore drills order after already queued application backups, integrity
24+
checks and database drills. Their runtime budget starts when the drill can run,
25+
so a long initial upload cannot exhaust the mail service's lock-wait budget.
26+
The existing shared lock still serializes later arrivals.
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
[Unit]
2+
# Wait for already queued host recovery work before starting the mail drill's
3+
# one-hour lock wait. A large first backup must not spend that entire budget.
4+
After=host-app-backup.service host-backup-check.service host-postgres-restore-check.service
5+
6+
[Service]
7+
TimeoutStartSec=4h

0 commit comments

Comments
 (0)