feat(cnpg): Add PostgreSQL 17 and 18 support - #49279
Conversation
|
Needs to be retargeted towards common2026 branch. |
|
There also is a postgis 18 image. So let's use proper research and more human work then Ai dumbs please. Thanks |
Wrong |
That just covers or unit tests not install tests and also misses any additional tests for your changes. |
Doesn't seem to be part of this pr. So wrong claim. Missing any testing |
|
Got some work to do to make that work again. (Proper rebase) |
7a032d0 to
27e595b
Compare
- Add '17' and '18' to valid pgVersions in _validation.tpl - Add '17' and '18' to the pgVersion enum in schemas/cnpg/cnpg.json and regenerate docs/cnpg/index.md (the supported-version gate for consumers) - Reject type 'vectors' + pgVersion '18' with a clear message (pgvecto.rs has no PG18 build; superseded by VectorChord) instead of a cryptic image error - Add postgres17Image/postgres18Image (cloudnative-pg/postgresql 17.10, 18.4) - Add postgresPostgis17Image (postgis 17-3.5) and postgresPostgis18Image (postgis 18-3.6-standard-bookworm; plain 18-3.x tags are not published) - Add postgresVectors17Image (pgvecto.rs 17.5-v0.4.0) - Add postgresVectorchord17Image/18Image (vectorchord 17.9-1.1.1, 18.3-1.1.1) - Add unit tests for the new image selectors and the vectors/18 guard - Add cnpg-pg17, cnpg-pg18 and cnpg-pg18-postgis install fixtures + CI matrix entries - Update cluster_validation_test.yaml for the new valid versions - Bump common library chart version 30.0.0 -> 30.1.0 pgvecto.rs publishes no PG18 image (superseded by VectorChord), so postgresVectors18Image is intentionally omitted. All image digests were verified against the ghcr.io registry.
27e595b to
53f0356
Compare
|
Thank you for your time. |
|
@Crow-Control should be in a state worth for you looking at it |
Description
Adds PostgreSQL 17 and 18 support to the CNPG integration of the common library. Users can now set
pgVersion: 17orpgVersion: 18on a CNPG cluster and the correct operand image is selected automatically.This extends both validation layers - the runtime
_validation.tplguard and thepgVersionJSON-schema enum inschemas/cnpg/cnpg.json(with the generateddocs/cnpg/index.mdupdated to match) - so the new versions are accepted by downstream consumers, not just the template.Fixes #
Type of change
How Has This Been Tested?
cluster_spec_test.yamlasserting the correctspec.imageNamefor each new image key (postgres 17/18, postgis 17/18, vectors 17, vectorchord 17/18), plus a negative case incluster_validation_test.yamlprovingtype: vectors+pgVersion: 18fails with a clear message (pgvecto.rs has no PG18 build). Fullcommon-testsuite passes locally (helm unittest -f "tests/**/*.yaml").cnpg-pg17-values.yaml,cnpg-pg18-values.yamlandcnpg-pg18-postgis-values.yamlto the common-tests install matrix; these deploy real CNPG clusters (operator chart0.27.1) on PG17, PG18 and PG18+PostGIS viact install.ghcr.ioregistry before pinning.Notes:
New images and pinned digests:
18-3.6-standard-bookworm); no plain18-3.xtag exists inghcr.io/cloudnative-pg/postgis, so that scheme is used for the 18 entry while 15-17 keep their existing plain tags.ghcr.io/tensorchord/cloudnative-pgvecto.rshas no PostgreSQL 18 build (the project is superseded by VectorChord - its highest major is 17), sopostgresVectors18Imageis intentionally not added. VectorChord covers PG18.Checklist:
feat(chart-name):,fix(chart-name):,chore(chart-name):,docs(chart-name):orfix(docs):Please don't blindly check all the boxes. Read them and only check those that apply.
Those checkboxes are there for the reviewer to see what is this all about and
the status of this PR with a quick glance.