The paperless Hetzner cutover (PR #23) broke WAL archiving + base backups: InvalidArgument on every PutObject/CreateMultipartUpload. Root cause — barman requests SSE-S3 (encryption: AES256); Hetzner Object Storage
supports only SSE-C, which the barman-cloud plugin can't use
(cnpg/plugin-barman-cloud#646).
Confirmed live: aws s3 cp --sse AES256 fails identically, plain PUT works.
This removes encryption: AES256 from the pprl-pg ObjectStore (wal+data).
Accepted trade-off: CNPG backups are not encrypted at rest on
Hetzner (transit is TLS, bucket private). Velero is unaffected — Kopia
encrypts client-side. Revisit at-rest encryption if the plugin gains SSE-C.
Current state: paperless ContinuousArchiving=False (WAL queuing on PVC)
until this merges and Flux redeploys. After merge I'll re-validate:
WAL resumes → base backup Completed → scratch restore.
## Fix: paperless CNPG backups failing on Hetzner
The paperless Hetzner cutover (PR #23) broke WAL archiving + base backups:
`InvalidArgument` on every PutObject/CreateMultipartUpload. Root cause —
**barman requests SSE-S3 (`encryption: AES256`); Hetzner Object Storage
supports only SSE-C**, which the barman-cloud plugin can't use
([cnpg/plugin-barman-cloud#646](https://github.com/cloudnative-pg/plugin-barman-cloud/issues/646)).
Confirmed live: `aws s3 cp --sse AES256` fails identically, plain PUT works.
This removes `encryption: AES256` from the pprl-pg ObjectStore (wal+data).
**Accepted trade-off:** CNPG backups are **not encrypted at rest** on
Hetzner (transit is TLS, bucket private). Velero is unaffected — Kopia
encrypts client-side. Revisit at-rest encryption if the plugin gains SSE-C.
Current state: paperless `ContinuousArchiving=False` (WAL queuing on PVC)
until this merges and Flux redeploys. After merge I'll re-validate:
WAL resumes → base backup `Completed` → scratch restore.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
The Hetzner cutover broke WAL archiving and base backups with
InvalidArgument: barman requests SSE-S3 (encryption: AES256), but
Hetzner Object Storage supports only SSE-C, which the barman-cloud
plugin cannot use (cnpg plugin-barman-cloud #646). Confirmed live —
aws-cli PUT --sse AES256 fails the same way, plain PUT succeeds.
Remove encryption from wal/data so backups use no SSE header. Trade-off
(accepted): CNPG backups are not encrypted at rest on Hetzner; transit
is TLS and the bucket is private. Revisit if/when the plugin gains SSE-C.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Fix: paperless CNPG backups failing on Hetzner
The paperless Hetzner cutover (PR #23) broke WAL archiving + base backups:
InvalidArgumenton every PutObject/CreateMultipartUpload. Root cause —barman requests SSE-S3 (
encryption: AES256); Hetzner Object Storagesupports only SSE-C, which the barman-cloud plugin can't use
(cnpg/plugin-barman-cloud#646).
Confirmed live:
aws s3 cp --sse AES256fails identically, plain PUT works.This removes
encryption: AES256from the pprl-pg ObjectStore (wal+data).Accepted trade-off: CNPG backups are not encrypted at rest on
Hetzner (transit is TLS, bucket private). Velero is unaffected — Kopia
encrypts client-side. Revisit at-rest encryption if the plugin gains SSE-C.
Current state: paperless
ContinuousArchiving=False(WAL queuing on PVC)until this merges and Flux redeploys. After merge I'll re-validate:
WAL resumes → base backup
Completed→ scratch restore.🤖 Generated with Claude Code