Commit Graph
664 Commits
Author SHA1 Message Date
Felix Kunde 39cc09ccaa feature toggle for using maintenance windows (#3074)
* feature toggle for using maintenance windows
2026-04-16 17:13:18 +02:00
Polina Bungina e9478894a8 Avoid rotating pods for PGVERSION change outside of maintenance window (#3065)
* Avoid rotating pods for PGVERSION change outside of maintenance window
* Update docs
2026-04-07 12:16:55 +02:00
Ida Novindasari 421bd6d664 fix: invalid switchover scheduling with default maintenance windows (#3058) 2026-03-24 12:57:15 +01:00
Jorge SolorzanoandFelix Kunde d495825f4b Remove hardcoded VersionMap from majorversionupgrade (#3043)
Co-authored-by: Felix Kunde <felix-kunde@gmx.de>
2026-03-02 11:13:10 +01:00
Felix Kunde 2a31c403d0 do not reset secrets of standby clusters (#3044)
* do not reset secrets of standby clusters
align error message with unit test
* check for other env vars, too
2026-02-26 17:27:47 +01:00
Ida Novindasari aefe9d8298 chore: add logging for major upgrade failure (#3046) 2026-02-19 09:57:20 +01:00
Ida NovindasariandPolina Bungina 6ce7c50cec Add support for pg18 and remove pg13 (#3035)
* Add support for pg18 and remove pg13
* Update general spilo image and use new rebuilt e2e spilo image

---------

Co-authored-by: Polina Bungina <polina.bungina@zalando.de>
2026-02-17 10:19:19 +01:00
Felix Kunde 4f130f9cce provide examples for maintenance_windows in manifest examples (#3040) 2026-02-02 16:35:01 +01:00
Felix Kunde b84c58c2a6 add support for global maintenance windows (#3038)
* add support for global maintenance windows
* fix schema validation and trim \ when unmarshalling maintenance window
2026-01-30 11:37:21 +01:00
Mikkel Oscar Lyderik LarsenandFelix Kunde f05150a81e Use UpdateStatus instead of patch (#3005)
Signed-off-by: Mikkel Oscar Lyderik Larsen <mikkel.larsen@zalando.de>
Co-authored-by: Felix Kunde <felix-kunde@gmx.de>
2026-01-27 10:44:30 +01:00
Polina Bungina b97de5d7f1 Standby section improvements (#3033)
- Allow standby_host to be specified together with wal_path
- Add standby_primary_slot_name
2026-01-19 13:54:27 +01:00
Felix Kunde 97115d6e3d add annotation to ignore resources thresholds (#3030)
* add annotation to ignore resources thresholds
* add test case when annotation key is set but value is not true
2026-01-13 09:33:24 +01:00
Mikkel Oscar Lyderik Larsen a585b17796 Generate postgresql CRD from go structs (#3007)
* Sort postgresql.crd.yaml
* Generate postgresql CRD from go structs
* Expand sidecars, env and initcontainers
* Embed CRD to be submitted by the operator

Signed-off-by: Mikkel Oscar Lyderik Larsen <mikkel.larsen@zalando.de>

---------

Signed-off-by: Mikkel Oscar Lyderik Larsen <mikkel.larsen@zalando.de>
2026-01-12 17:33:28 +01:00
Mikkel Oscar Lyderik Larsen f6839f87b9 Modernize code generation (#3003)
Signed-off-by: Mikkel Oscar Lyderik Larsen <mikkel.larsen@zalando.de>
2026-01-09 14:22:10 +01:00
cd05682482 fix switchover schedule tests (#2995)
* fix switchover schedule tests

Previously the tests would fail depending on the local time zone and the
time of day the test was being run.

---------

Co-authored-by: Felix Kunde <felix-kunde@gmx.de>
Co-authored-by: Mikkel Oscar Lyderik Larsen <mikkeloscar@users.noreply.github.com>
2025-12-11 10:22:40 +01:00
Felix Kunde 04ad66f701 stop retention user cleanup early again when DB connection attempt fails (#2999)
* stop retention user cleanup early again when DB connection attempt fails
* add unit test and new returned error from updateSecret
2025-12-10 10:01:07 +01:00
42bbead4c9 Fix Sidecar without image specification issue (#2977)
Co-authored-by: Oleg Nozdrachev <ovnozdrach@mts.ru>
Co-authored-by: Felix Kunde <felix-kunde@gmx.de>
2025-12-09 09:37:11 +01:00
Felix Kunde 2c57498e43 skip db user actions when its secret failed to sync on update (#2969)
* skip db user actions when its secret failed to sync on update
* need to add new pgUser field to e2e test
* lets collect errors of syncSecret so we still get status updateFailed
2025-11-05 16:28:37 +01:00
Felix Kunde 1af4c50ed0 bump to v1.15.0 (#2965)
* bump to v1.15.0
* more linter hints
* update dependencies of kubectl-pg plugin
2025-10-21 11:56:33 +02:00
Felix Kunde 3bc244fe39 bump dependencies and reflect linter suggestions (#2963) 2025-10-16 10:23:36 +02:00
Eng Zer JunandFelix Kunde eddf521227 Replace golang.org/x/exp with stdlib (#2857)
* Replace `golang.org/x/exp` with stdlib

These experimental packages are now available in the Go standard
library since Go 1.21.

	1. golang.org/x/exp/slices -> slices [1]
	2. golang.org/x/exp/maps -> maps [2]

[1]: https://go.dev/doc/go1.21#slices
[2]: https://go.dev/doc/go1.21#maps

Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>

* Run go mod tidy

Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>

---------

Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>
Co-authored-by: Felix Kunde <felix-kunde@gmx.de>
2025-10-14 11:59:48 +02:00
Felix Kunde dc29425969 include external traffic policy comparison into service diffing (#2956) 2025-09-23 14:30:06 +02:00
Polina Bungina bcd729b2cc Add selector to master service when switching to CM (#2955)
Add service selector comparison to compareServices
This is necessary for the proper switch of `kubernetes_use_configmaps` configuration value, as master service should have different label selector setup for those.
2025-09-19 14:44:17 +02:00
Morten Lied Johansen ad7e590916 Skip creation of OwnerReference if user is in a different namespace (#2912)
Instead of doing a string compare on the username, check the actual namespace of the user to determine if an owner reference can be created.
2025-09-17 15:57:36 +02:00
Jociele Padilha fa4bc21538 upgrade Go from 1.23.4 to 1.25.0 (#2945)
* upgrade go to 1.25
* add minor version to be Go 1.25.0
* revert the Go version on README to keep the history of the release
2025-08-19 14:40:39 +02:00
Polina Bungina 68c4b49636 Fix wrong condition for bootstrap labels (#2875) 2025-03-10 17:05:27 +01:00
Polina Bungina c7a586d0f8 Configure (upcoming) Patroni bootstrap labels feature (#2872)
Set the value from the critical-operation-pdb's selector if PDBs are enabled
2025-03-10 10:16:01 +01:00
Felix Kunde 746df0d33d do not remove publications of slot defined in manifest (#2868)
* do not remove publications of slot defined in manifest
* improve condition to sync streams
* init publication tables map when adding manifest slots
* need to update c.Stream when there is no update
2025-02-26 17:31:37 +01:00
Felix Kunde 2a4be1cb39 fix creating secrets for rotation users (#2863)
* fix creating secrets for rotation users
* rework annotation comparison on update to decide on when to call syncSecrets
2025-02-14 09:44:09 +01:00
Polina BunginaandFelix Kunde c8063eb78a Protect Pods from disruptions during upgrades (#2844)
Co-authored-by: Felix Kunde <felix-kunde@gmx.de>
2025-01-30 10:41:58 +01:00
Polina Bungina a56ecaace7 Critical operation PDB (#2830)
Create the second PDB to cover Pods with a special "critical operation" label set.

This label is going to be assigned to all pg cluster's Pods by the Operator during a PG major version upgrade, by Patroni during a cluster/replica bootstrap. It can also be set manually or by any other automation tool.
2025-01-29 12:41:08 +01:00
Polina Bungina f49b4f1e97 Ensure podAnnotations are removed from pods if reset in the config (#2826) 2025-01-24 16:53:14 +01:00
Polina Bungina b0cfeb30ea Partially revert #2810 (#2849)
Only schedule switchover for pod migration, consider mainWindow for PGVERSION env change
2025-01-23 16:35:33 +01:00
Polina Bungina e04b91d8af Only check maintenance window for upgrade after pg version recheck (#2842)
This way we avoid misleading "skipping major version upgrade, not in maintenance window" log line when c.currentMajorVersion is not initialized (==0)
2025-01-17 14:29:52 +01:00
Polina Bungina 8522331cf2 Extend MaintenanceWindows parameter usage (#2810)
Consider maintenance window when migrating master pods and replacing pods (rolling update)
2025-01-15 18:04:36 +01:00
Tabby b276cd2f94 Feat: Support Running Sidecar with a Command. (#2449)
* Feat: Support Running Sidecard with a Command.

This PR addresses issue #2448 . Some containers may not have entry points, if this is the case they would need to be run using a command. This change extends the definition of sidecar so that there is an optional command field. If the field is present then the container will be run using that command. This is a two line change that is fully backward compatible.
2024-12-23 09:08:35 +01:00
Ida NovindasariandPolina Bungina 470a1eab89 Add support for pg17 and remove pg12 (#2773)
* Add support for pg17
* use new gcov2lcov-action
* Use ghcr spilo-17
* Update SPILO_CURRENT and SPILO_LAZY
* Update e2e/run.sh

---------

Co-authored-by: Polina Bungina <27892524+hughcapet@users.noreply.github.com>
2024-12-20 11:22:52 +01:00
Felix Kunde 34df486f00 fix flaky comparison unit test of retruned errors (#2822) 2024-12-19 17:35:01 +01:00
cosimomeli eef49500a5 Add support for EBS CSI Driver (#2677)
* Add support for EBS CSI Driver
2024-12-19 12:32:09 +01:00
Felix Kunde 8cc6796537 fix comparing stream annotations and improve unit test (#2820) 2024-12-18 11:22:08 +01:00
Felix Kunde d44bfabe78 do not use extra labels to list stream CRDs (#2803)
* do not use extra labels to list stream CRDs
* add diff on labels for streams + unit test coverage
2024-12-17 08:54:37 +01:00
Felix KundeandIda Novindasari 80ef38f7f0 add resource annotation and ignore recovery type (#2817)
* add resource annotation and ignore recovery type
* Update docs/reference/cluster_manifest.md

---------

Co-authored-by: Ida Novindasari <idanovinda@gmail.com>
2024-12-16 18:17:19 +01:00
Felix Kunde 301462c415 remove streams delete and extend unit tests (#2737) 2024-12-16 18:13:52 +01:00
Ida Novindasari fc9a26040a Integrate spilo with Patroni 4 (#2818) 2024-12-16 11:11:22 +01:00
acdb957d8e fix switch over candidate retrieving (#2760)
* fix switch over candidate retrieving

Signed-off-by: fahed dorgaa <fahed.dorgaa.ext@corp.ovh.com>

---------

Signed-off-by: fahed dorgaa <fahed.dorgaa.ext@corp.ovh.com>
Co-authored-by: fahed dorgaa <fahed.dorgaa.ext@corp.ovh.com>
Co-authored-by: Felix Kunde <felix-kunde@gmx.de>
2024-11-01 17:06:20 +01:00
Felix Kunde 8231797efa add cluster field for PVCs (#2785)
* add cluster field for PVCs
* sync volumes on cluster creation
* fully spell pvc in log messages
2024-10-31 14:08:50 +01:00
Felix Kunde 002d0f94a1 quote schema names in case they use special characters and remove strings.Builder (#2782) 2024-10-17 16:52:24 +02:00
Motte f5e122e8ef Fix resource constraints (#2735)
* Add empty string cases to patterns for pod resources
* Added empty strings test case
* Restored k8sres.go and changed test to zeros
* Updated validation pattern in manifests/operatorconfiguration.crd.yaml and pkg/apis/acid.zalan.do/v1/crds.go
2024-10-16 17:19:07 +02:00
Polina Bungina 41f5fe1dc9 More major upgrade prechecks (#2775)
Skip when 
- it is a standby clusters
- there is no master in the cluster
2024-10-15 14:05:39 +02:00
Polina Bungina 3ca86678cc Add major upgrade prechecks (#2772)
Don't fail major upgrade (don't set annotation) if replica(s) are not
(yet) streaming or replication lag is too high
2024-10-11 17:11:46 +02:00