postgres-operator/pkg
Nandan acb88d9b93 2867: Configurable api group for postgres operator with default
In Kubernetes, there is tight coupling of API group, CRD and Custom Resources managed by operators. CRDs are cluster resource and unique per cluster.
CRD operatorconfigurations.acid.zalan.do defines the operator configurations for postgres operator.
CRD postgresqls.acid.zalan.do defines minimum and maximum supported postgresql versions.

This leads to issues in a multi-tenant k8s cluster, an example provided below.

In Namespace X, user X deploys web tier application which uses zalando postgres-operator with max version PG 15.
In Namespace Y, user Y deploys web tier application which also uses zalando postgres-operator but needs PG 17 runs into an issue as CRD postgresqls.acid.zalan.do supports only PG 15. This happens because CRD is cluster scope and all namespace scoped applications should adhere to it.

With large k8s clusters, postgresql being a very popular database, zalando postgres operator being defacto way to manage databases, there is a need to keep this configurable so applications can manage the API group of CRDs.

Take API group for postgres operator as an env variable, assuming that the relevant CRDs with API groups are installed.
2025-02-24 09:01:52 -08:00
..
apis 2867: Configurable api group for postgres operator with default 2025-02-24 09:01:52 -08:00
apiserver Add operator deployment readiness probe (#1874) 2023-01-05 18:29:47 +01:00
cluster fix creating secrets for rotation users (#2863) 2025-02-14 09:44:09 +01:00
controller bump operator to 1.14.0 (#2827) 2024-12-23 12:12:33 +01:00
generated update codegen (#2832) 2025-01-03 16:18:17 +01:00
spec Add abitility to set QPS and Burst limits for api client (#2667) 2024-12-23 08:53:27 +01:00
teams improve additional teams lookup (#2445) 2023-10-16 16:48:19 +02:00
util Extend MaintenanceWindows parameter usage (#2810) 2025-01-15 18:04:36 +01:00