d795e22f3d
## Why Servarr backups (the periodic config+DB zips) and sonarr MediaCover posters still live on each replica's local /config, which is an emptyDir. Backups are leader-local and lost when the pod is rescheduled; sonarr covers render inconsistently across the 3 active-active replicas. #387 already moved radarr covers to a shared Ceph RGW bucket; this extends the same pattern to backups for all three apps and to sonarr's covers. ## Changes - Add an `arrstack-backups` ObjectStoreUser + Bucket (cephrgw-operator), minting the `arrstack-backups-s3` credential Secret in-namespace (no Vault KV seeding). Backups get their own bucket (not arrstack-media) because they carry secrets (Config.xml API keys, the DB) and warrant separate credentials/lifecycle from poster art; the three apps share it, isolated by a per-app key prefix. - Wire sonarr to the shared `arrstack-media` bucket via `Sonarr__MediaCoverS3__*` (prefix `sonarr`, partitioned from radarr's `radarr` prefix), plus the estate CA mount at /etc/ssl/vault-ca/ca.crt for RGW TLS validation. - Wire radarr/sonarr/prowlarr backups via `<App>__BackupS3__*` to `arrstack-backups` (per-app prefix); add the CA mount to sonarr and prowlarr. ## Notes - The env keys are consumed by the -unkin3+ images (separate app PRs) and ignored by older images, so this is safe to apply ahead of the image bump. - `kubectl kustomize apps/base/arrstack` builds clean.
20 lines
330 B
YAML
20 lines
330 B
YAML
---
|
|
apiVersion: kustomize.config.k8s.io/v1beta1
|
|
kind: Kustomization
|
|
|
|
resources:
|
|
- namespace.yaml
|
|
- vaultauth.yaml
|
|
- pv-media-tv.yaml
|
|
- pv-media-movies.yaml
|
|
- pvc-media-tv.yaml
|
|
- pvc-media-movies.yaml
|
|
- media-bucket.yaml
|
|
- backups-bucket.yaml
|
|
- postgres
|
|
- sonarr
|
|
- radarr
|
|
- prowlarr
|
|
- nzbget
|
|
- arrproxy
|