Goal
Give PostgreSQL installations a supported backup and restore workflow comparable to the existing SQLite experience.
Why
Chaptarr currently skips database backup for PostgreSQL and rejects PostgreSQL database restores, requiring operators to build an external process. This leaves the application backup UI incomplete for production PostgreSQL deployments.
Requirements
- R1: Create versioned logical backups for the main, log, and cache databases using supported PostgreSQL tooling or a documented pluggable backend.
- R2: Include checksums, Chaptarr version, PostgreSQL compatibility metadata, and a manifest describing all backup components.
- R3: Validate backup completeness before reporting success.
- R4: Restore into a staged or explicitly confirmed target and validate it before cutover.
- R5: Never place passwords in process arguments, logs, archive metadata, or persisted task output.
- R6: Preserve the existing external-backup option for operators who do not want Chaptarr-managed database backups.
Acceptance criteria
- A backup containing all three databases can be created and checksum-verified.
- A clean PostgreSQL fixture can be restored and passes migrations plus application startup checks.
- Partial, corrupt, or version-incompatible backups fail before replacing an active database.
- Cancellation and failure leave the active databases unchanged.
- Security tests verify that credentials are absent from logs and backup artifacts.
Likely implementation areas
src/NzbDrone.Core/Backup/
src/Chaptarr.Api.V1/System/Backup/
- Backup UI, documentation, and PostgreSQL integration tests
Out of scope
- Provisioning PostgreSQL servers or storage.
- Deleting external backups or defining infrastructure retention policy.
Goal
Give PostgreSQL installations a supported backup and restore workflow comparable to the existing SQLite experience.
Why
Chaptarr currently skips database backup for PostgreSQL and rejects PostgreSQL database restores, requiring operators to build an external process. This leaves the application backup UI incomplete for production PostgreSQL deployments.
Requirements
Acceptance criteria
Likely implementation areas
src/NzbDrone.Core/Backup/src/Chaptarr.Api.V1/System/Backup/Out of scope