Releases: case-88/pgbouncer-aurora-operator
Release list
v0.2.0
Highlights
- Traffic routing rebuilt around explicit Pod labels:
member-writer/member-readermembership plus atrafficlabel (true/false/none). Role Services select membership andtraffic="true"together, and every Pod carriesmember-anyfor Reader fallback. - Reconcile pipeline refactored into observe → decide → apply layers: snapshot assembly, a pure planner with per-scenario decision files, and a controller apply layer that owns all Kubernetes writes.
- Reader fallback to the Writer is now built-in and always on. When no healthy Reader exists, the Reader Service selector switches to
member-anywithout a rollout. healthynow means exactly that the monitor probe succeeded. PgBouncer Pod readiness is tracked as a separate signal, and a Reader serves traffic only when both hold.- Missing-instance debounce now requires both
removeAfterMissingCountand the newspec.topologyPolicy.removeAfterMissingSecondsbefore an instance loses traffic. - Fresh RDS metadata reporting an instance as
deletingskips the missing debounce and detaches traffic immediately. Completed RDS metadata refreshes also pull the next discovery forward. - Operator logs overhauled into human-readable one-line messages: failover window open/close, health transitions, reader fallback start/end, topology changes, and deleting-instance detection.
- CR status now reports the active failover window (
status.failoverWindow) and per-instance monitor failure kind.
Image
quay.io/case-88/pgbouncer-aurora-operator:v0.2.0- Multi-arch digest:
sha256:868618dddd89b71cccd5aa62e9b919afafa3a448d9e400980e1bcb3b43998072 - Platforms:
linux/amd64,linux/arm64
Helm
The v0.2.0 charts are published on the Quay OCI chart registry:
oci://quay.io/case-88/charts/pgbouncer-aurora-crds --version 0.2.0oci://quay.io/case-88/charts/pgbouncer-aurora-operator --version 0.2.0oci://quay.io/case-88/charts/pgbouncer-aurora --version 0.2.0
CRD
- Raw manifest:
https://raw.githubusercontent.com/case-88/pgbouncer-aurora-operator/v0.2.0/deploy/crd.yaml
Migration Notes
- Apply the v0.2.0 CRD before upgrading the operator.
spec.topologyPolicy.zoneAware(zone-aware placement) has been removed.spec.topologyPolicy.readerEmptyFallbackhas been removed; Reader fallback is always enabled.- Remove both fields from existing
PgBouncerAuroramanifests. Strict validation or GitOps pipelines can reject the removed fields.
Validation
go test ./...andgovulncheck ./...on the release commithelm lintandhelm templatefor CRD, operator, and CR charts- Quay image manifest inspection for
v0.2.0 - Failover and reader add/delete lifecycle verified against a live Aurora cluster
v0.1.1
Highlights
- Operators now claim each
PgBouncerAuroraCR before running discovery, monitor, metadata refresh, status updates, or child-resource writes. - Removed
spec.topologyPolicy.writerChangeConnectionHandling; Writer changes now always roll the old/new Writer PgBouncer Deployments through role-based Pod template labels. - Reader fallback now uses fresh confirmed Reader health, so preserved or missing Readers do not block Writer fallback when no Reader is confirmed.
- Reader Service traffic membership now follows monitor health thresholds. Confirmed unhealthy Readers are removed from the Reader Service even if topology still reports them as Readers.
- Role labels no longer revive Reader traffic membership by themselves.
- PgBouncer Pods now render
terminationGracePeriodSecondswith a default of30seconds. - Monitor unhealthy observations are logged as state changes instead of repeated error stack traces when cached health is carried.
Image
quay.io/case-88/pgbouncer-aurora-operator:v0.1.1- Multi-arch digest:
sha256:d485005af4489c42d953d3ee392634594c7123e2702e4099d5b10147012f8252 - Platforms:
linux/amd64,linux/arm64
Helm
The v0.1.1 charts were already published on the Quay OCI chart registry:
oci://quay.io/case-88/charts/pgbouncer-aurora-crds --version 0.1.1oci://quay.io/case-88/charts/pgbouncer-aurora-operator --version 0.1.1oci://quay.io/case-88/charts/pgbouncer-aurora --version 0.1.1
Migration Notes
- Remove
spec.topologyPolicy.writerChangeConnectionHandlingfrom existing manifests. Strict validation or GitOps pipelines can reject the removed field. - Review
readerEmptyFallback.enabledand application Reader target settings. In two-member Aurora clusters, Reader clients that use role checks should usually usepreferSecondaryoranytargets when fallback is enabled. - Use at least two PgBouncer replicas per Aurora instance for production rollouts.
- Review PgBouncer rollout drain expectations before lowering
spec.pgbouncer.terminationGracePeriodSeconds.
Validation
go test ./...helm lint charts/pgbouncer-aurora-crds charts/pgbouncer-aurora-operator charts/pgbouncer-aurorahelm templatefor CRD, operator, and CR charts- Quay image manifest inspection for
v0.1.1
v0.1.0
Initial v0.1.0 release of PgBouncer Aurora Operator.
This release provides the core operator workflow for running one PgBouncer per Aurora PostgreSQL DB instance and keeping Kubernetes Writer/Reader Service membership aligned with Aurora topology.
Highlights:
- Aurora Writer/Reader topology discovery with RDS metadata enrichment.
- Per-instance PgBouncer Deployments and Services.
- Writer and Reader Kubernetes Services with role-aware membership.
- Fast Writer failover handling and safe last-known-good behavior.
- Reader empty fallback support for writer-only clusters.
- Zone-aware PgBouncer placement.
- Built-in
/statusdashboard and/status.json. - Multi-CR scheduling and monitor/discovery isolation improvements.
- Operator and PgBouncer TLS-to-Aurora configuration support.
Operator images:
quay.io/case-88/pgbouncer-aurora-operator:v0.1.0quay.io/case-88/pgbouncer-aurora-operator:latest
Image index digest:
sha256:2c09d5d4932ecb80b9fdd3e80b5d2cc7dc4c57393b41acff8527ebe12a17d502
CRD manifest:
Install guide:
Notes:
- The custom resource API version is
pgbouncer-aurora.io/v1alpha1. - Helm packaging is versioned and released separately from this core manifest/image release.
- PgBouncer image selection remains configured separately in the custom resource.
v0.1.0-alpha.1
Initial follow-up public alpha release of PgBouncer Aurora Operator.
This release is intended for early validation. The API remains pgbouncer-aurora.io/v1alpha1 and may change before a stable release.
Highlights
- Simplifies operator runtime configuration by moving worker, rate-limit, and monitor job timeout knobs behind conservative internal defaults.
- Adds
--watch-names/WATCH_NAMESfor watching one or more CRs from a single operator. - Preserves explicit empty
--watch-names=as "watch all", even whenWATCH_NAMESis set. - Uses discovery timeout for RDS metadata enrichment.
- Adds a default NetworkPolicy manifest for the operator status/metrics endpoint.
- Adds
/statuspage preferences: browser-local recent-window selection and light/dark theme support.
Image
quay.io/case-88/pgbouncer-aurora-operator:v0.1.0-alpha.1
Multi-arch platforms:
linux/amd64linux/arm64
Image digest:
sha256:c8c4ab21dde2f83139912bdb326c4da186f4a8bca92f30e51aa9db24b3f72292
Manifests
CRD:
https://raw.githubusercontent.com/case-88/pgbouncer-aurora-operator/v0.1.0-alpha.1/deploy/crd.yaml
Install guide:
https://github.com/case-88/pgbouncer-aurora-operator#installation
Notes
- Use explicit version tags only.
- No
latestimage tag is published during alpha. - PgBouncer image is configured separately in the custom resource.
v0.1.0-alpha
Initial public alpha release of PgBouncer Aurora Operator.
This release is intended for early validation. The API is v1alpha1 and may change before v0.1.0.
Operator image:
quay.io/case-88/pgbouncer-aurora-operator:v0.1.0-alpha
CRD manifest:
https://raw.githubusercontent.com/case-88/pgbouncer-aurora-operator/v0.1.0-alpha/deploy/crd.yaml
Source:
https://github.com/case-88/pgbouncer-aurora-operator
Install guide:
https://github.com/case-88/pgbouncer-aurora-operator#installation
Notes:
- Use explicit version tags only.
- No latest image tag is published during alpha.
- PgBouncer image is configured separately in the custom resource.