RAILIANCE-WP-0015: use workstation cron; suspend in-cluster CronJobs
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s

Cluster egress blocks age installs (github + Alpine CDN). Declare
workstation-cron schedule ConfigMap as the unattended path and keep
Option A CronJobs suspended until a prebuilt image is available.
This commit is contained in:
tegwick 2026-07-22 18:06:06 +02:00
parent cf742a0868
commit 1376b4f34c
4 changed files with 96 additions and 44 deletions

View file

@ -71,11 +71,19 @@ Nextcloud WebDAV via CronJobs in `manifests/cnpg-option-a-backup.yaml`.
```bash
bao login -method=oidc -path=netkingdom role=railiance-backup-workload-kv-read
make cnpg-backup-offsite-secret-apply # Secret from OpenBao (no private key)
make cnpg-option-a-apply # CronJobs + RBAC
make cnpg-logical-backup # optional immediate workstation run
make cnpg-option-a-apply # schedule CM + RBAC + suspended CronJobs
make cnpg-logical-backup # immediate / daily workstation run
make cnpg-backup-status
```
**Unattended schedule (primary):** workstation cron (cluster pods lack egress to
install `age`; in-cluster CronJobs ship suspended until a prebuilt image exists):
```cron
# Daily 02:30 UTC — Option A multi-cluster logical backup (RPO 24h)
30 2 * * * cd $HOME/railiance-apps && make cnpg-logical-backup >>$HOME/.cache/railiance/backups/cnpg/cron.log 2>&1
```
Barman `ObjectStore` / CNPG `ScheduledBackup` remain deferred (Phase 2 stubs in
`manifests/cnpg-backup-readiness.yaml`).