From d242d09ec74fb847967c5570729e8b56ac2a889e Mon Sep 17 00:00:00 2001 From: JiaoShuntian Date: Thu, 20 Nov 2025 08:43:56 +0800 Subject: [PATCH 1/2] update for ivyo 5.0 --- .github/workflows/test.yaml | 40 +++++++++---------- ...y-operator.ivorysql.org_ivoryclusters.yaml | 2 +- ...ory-operator.ivorysql.org_ivyupgrades.yaml | 4 +- config/default/kustomization.yaml | 2 +- config/manager/manager.yaml | 16 ++++---- config/singlenamespace/kustomization.yaml | 2 +- ...y-operator.ivorysql.org_ivoryclusters.yaml | 2 +- .../install/default/kustomization.yaml | 2 +- .../kustomize/install/manager/manager.yaml | 6 +-- .../singlenamespace/kustomization.yaml | 2 +- .../ivorycluster/pgbackrest_test.go | 8 ++-- internal/pgbackrest/config.go | 2 +- internal/pgbackrest/config_test.go | 2 +- internal/pgbackrest/pgbackrest.go | 2 +- internal/pgbackrest/pgbackrest_test.go | 2 +- ivyo_release_notes.md | 15 ++++++- .../v1beta1/ivorycluster_types.go | 2 +- .../v1beta1/pgupgrade_types.go | 4 +- .../exporter-upgrade/00--cluster.yaml | 4 +- .../exporter-upgrade/02--update-cluster.yaml | 4 +- 20 files changed, 68 insertions(+), 55 deletions(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 449e828886..21cc29c416 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -64,9 +64,9 @@ jobs: with: k3s-channel: "${{ matrix.kubernetes }}" prefetch-images: | - docker.io/ivorysql/pgbackrest:ubi8-2.54.1-4.0-1 - docker.io/ivorysql/pgbouncer:ubi8-1.23.0-4.0-1 - docker.io/ivorysql/ivorysql:ubi8-4.5-4.0-1 + docker.io/ivorysql/pgbackrest:ubi8-2.56.0-5.0-1 + docker.io/ivorysql/pgbouncer:ubi8-1.23.0-5.0-1 + docker.io/ivorysql/ivorysql:ubi8-5.0-5.0-1 - run: make createnamespaces check-envtest-existing env: @@ -98,12 +98,12 @@ jobs: with: k3s-channel: "${{ matrix.kubernetes }}" prefetch-images: | - docker.io/ivorysql/pgadmin:ubi8-8.14.0-4.0-1 - docker.io/ivorysql/pgbackrest:ubi8-2.54.1-4.0-1 - docker.io/ivorysql/pgbouncer:ubi8-1.23.0-4.0-1 - docker.io/ivorysql/postgres-exporter:ubi8-0.17.0-4.0-1 - docker.io/ivorysql/ivorysql:ubi8-4.5-4.0-1 - docker.io/ivorysql/postgis:ubi8-3.4-4.0-1 + docker.io/ivorysql/pgadmin:ubi8-9.9-5.0-1 + docker.io/ivorysql/pgbackrest:ubi8-2.56.0-5.0-1 + docker.io/ivorysql/pgbouncer:ubi8-1.23.0-5.0-1 + docker.io/ivorysql/postgres-exporter:ubi8-0.17.0-5.0-1 + docker.io/ivorysql/ivorysql:ubi8-5.0-5.0-1 + docker.io/ivorysql/postgis:ubi8-3.5-5.0-1 registry.developers.crunchydata.com/crunchydata/crunchy-upgrade:ubi8-5.3.1-0 - run: go mod download - name: Build executable @@ -118,13 +118,13 @@ jobs: docker run --detach --network host --read-only \ --volume "$(pwd):/mnt" --workdir '/mnt' --env 'PATH=/mnt/bin' \ --env 'KUBECONFIG=hack/.kube/ivory-operator/ivyo' \ - --env 'RELATED_IMAGE_PGADMIN=docker.io/ivorysql/pgadmin:ubi8-8.14.0-4.0-1' \ - --env 'RELATED_IMAGE_PGBACKREST=docker.io/ivorysql/pgbackrest:ubi8-2.54.1-4.0-1' \ - --env 'RELATED_IMAGE_PGBOUNCER=docker.io/ivorysql/pgbouncer:ubi8-1.23.0-4.0-1' \ - --env 'RELATED_IMAGE_PGEXPORTER=docker.io/ivorysql/postgres-exporter:ubi8-0.17.0-4.0-1' \ + --env 'RELATED_IMAGE_PGADMIN=docker.io/ivorysql/pgadmin:ubi8-9.9-5.0-1' \ + --env 'RELATED_IMAGE_PGBACKREST=docker.io/ivorysql/pgbackrest:ubi8-2.56.0-5.0-1' \ + --env 'RELATED_IMAGE_PGBOUNCER=docker.io/ivorysql/pgbouncer:ubi8-1.23.0-5.0-1' \ + --env 'RELATED_IMAGE_PGEXPORTER=docker.io/ivorysql/postgres-exporter:ubi8-0.17.0-5.0-1' \ --env 'RELATED_IMAGE_PGUPGRADE=registry.developers.crunchydata.com/crunchydata/crunchy-upgrade:ubi8-5.3.1-0' \ - --env 'RELATED_IMAGE_IVORY_17=docker.io/ivorysql/ivorysql:ubi8-4.5-4.0-1' \ - --env 'RELATED_IMAGE_IVORY_17_GIS_3.4=docker.io/ivorysql/postgis:ubi8-3.4-4.0-1' \ + --env 'RELATED_IMAGE_IVORY_18=docker.io/ivorysql/ivorysql:ubi8-5.0-5.0-1' \ + --env 'RELATED_IMAGE_IVORY_18_GIS_3.5=docker.io/ivorysql/postgis:ubi8-3.5-5.0-1' \ --env 'IVYO_FEATURE_GATES=TablespaceVolumes=true' \ --name 'ivory-operator' ubuntu \ ivory-operator @@ -135,11 +135,11 @@ jobs: - run: make generate-kuttl env: - KUTTL_PG_UPGRADE_FROM_VERSION: '17' - KUTTL_PG_UPGRADE_TO_VERSION: '17' - KUTTL_PG_VERSION: '17' - KUTTL_POSTGIS_VERSION: '3.4' - KUTTL_IVORY_IMAGE: 'docker.io/ivorysql/ivorysql:ubi8-4.5-4.0-1' + KUTTL_PG_UPGRADE_FROM_VERSION: '18' + KUTTL_PG_UPGRADE_TO_VERSION: '18' + KUTTL_PG_VERSION: '18' + KUTTL_POSTGIS_VERSION: '3.5' + KUTTL_IVORY_IMAGE: 'docker.io/ivorysql/ivorysql:ubi8-5.0-5.0-1' - run: | make check-kuttl && exit failed=$? diff --git a/config/crd/bases/ivory-operator.ivorysql.org_ivoryclusters.yaml b/config/crd/bases/ivory-operator.ivorysql.org_ivoryclusters.yaml index 32485faf29..8ee3549006 100644 --- a/config/crd/bases/ivory-operator.ivorysql.org_ivoryclusters.yaml +++ b/config/crd/bases/ivory-operator.ivorysql.org_ivoryclusters.yaml @@ -10468,7 +10468,7 @@ spec: postgresVersion: description: The major version of PostgreSQL installed in the PostgreSQL image - maximum: 17 + maximum: 18 minimum: 10 type: integer proxy: diff --git a/config/crd/bases/ivory-operator.ivorysql.org_ivyupgrades.yaml b/config/crd/bases/ivory-operator.ivorysql.org_ivyupgrades.yaml index 120bfbb142..0e6261346d 100644 --- a/config/crd/bases/ivory-operator.ivorysql.org_ivyupgrades.yaml +++ b/config/crd/bases/ivory-operator.ivorysql.org_ivyupgrades.yaml @@ -857,7 +857,7 @@ spec: type: object fromIvoryVersion: description: The major version of IvorySQL before the upgrade. - maximum: 17 + maximum: 18 minimum: 10 type: integer image: @@ -936,7 +936,7 @@ spec: type: string toIvoryVersion: description: The major version of IvorySQL to be upgraded to. - maximum: 17 + maximum: 18 minimum: 10 type: integer tolerations: diff --git a/config/default/kustomization.yaml b/config/default/kustomization.yaml index 6b899d92cd..4ba5373723 100644 --- a/config/default/kustomization.yaml +++ b/config/default/kustomization.yaml @@ -12,4 +12,4 @@ bases: images: - name: ivory-operator newName: docker.io/ivorysql/ivory-operator - newTag: v4.0 + newTag: v5.0 diff --git a/config/manager/manager.yaml b/config/manager/manager.yaml index 7171d35784..eeb09bd298 100644 --- a/config/manager/manager.yaml +++ b/config/manager/manager.yaml @@ -18,20 +18,20 @@ spec: fieldPath: metadata.namespace - name: IVORY_DEBUG value: "true" - - name: RELATED_IMAGE_IVORY_16 - value: "docker.io/ivorysql/ivorysql:ubi8-4.5-4.0-1" + - name: RELATED_IMAGE_IVORY_18 + value: "docker.io/ivorysql/ivorysql:ubi8-5.0-5.0-1" - name: RELATED_IMAGE_PGADMIN - value: "docker.io/ivorysql/pgadmin:ubi8-8.14.0-4.0-1" + value: "docker.io/ivorysql/pgadmin:ubi8-9.9-5.0-1" - name: RELATED_IMAGE_PGBACKREST - value: "docker.io/ivorysql/pgbackrest:ubi8-2.54.1-4.0-1" + value: "docker.io/ivorysql/pgbackrest:ubi8-2.56.0-5.0-1" - name: RELATED_IMAGE_PGBOUNCER - value: "docker.io/ivorysql/pgbouncer:ubi8-1.23.0-4.0-1" + value: "docker.io/ivorysql/pgbouncer:ubi8-1.23.0-5.0-1" - name: RELATED_IMAGE_PGEXPORTER - value: "docker.io/ivorysql/postgres-exporter:ubi8-0.17.0-4.0-1" + value: "docker.io/ivorysql/postgres-exporter:ubi8-0.17.0-5.0-1" - name: RELATED_IMAGE_PGUPGRADE value: "registry.developers.crunchydata.com/crunchydata/crunchy-upgrade:ubi8-5.3.1-0" - - name: RELATED_IMAGE_POSTGRES_16_GIS_3.4 - value: "docker.io/ivorysql/ivorysql-postgis:ubi8-3.4-2.0-1" + - name: RELATED_IMAGE_POSTGRES_18_GIS_3.5 + value: "docker.io/ivorysql/ivorysql-postgis:ubi8-3.5-5.0-1" securityContext: allowPrivilegeEscalation: false capabilities: { drop: [ALL] } diff --git a/config/singlenamespace/kustomization.yaml b/config/singlenamespace/kustomization.yaml index bb397d6d53..c0f3a94361 100644 --- a/config/singlenamespace/kustomization.yaml +++ b/config/singlenamespace/kustomization.yaml @@ -14,4 +14,4 @@ patches: images: - name: ivory-operator newName: docker.io/ivorysql/ivory-operator - newTag: v4.0 + newTag: v5.0 diff --git a/examples/kustomize/install/crd/bases/ivory-operator.ivorysql.org_ivoryclusters.yaml b/examples/kustomize/install/crd/bases/ivory-operator.ivorysql.org_ivoryclusters.yaml index 32485faf29..8ee3549006 100644 --- a/examples/kustomize/install/crd/bases/ivory-operator.ivorysql.org_ivoryclusters.yaml +++ b/examples/kustomize/install/crd/bases/ivory-operator.ivorysql.org_ivoryclusters.yaml @@ -10468,7 +10468,7 @@ spec: postgresVersion: description: The major version of PostgreSQL installed in the PostgreSQL image - maximum: 17 + maximum: 18 minimum: 10 type: integer proxy: diff --git a/examples/kustomize/install/default/kustomization.yaml b/examples/kustomize/install/default/kustomization.yaml index 5ba4804bc5..7c2919cf62 100644 --- a/examples/kustomize/install/default/kustomization.yaml +++ b/examples/kustomize/install/default/kustomization.yaml @@ -13,7 +13,7 @@ bases: images: - name: ivory-operator newName: docker.io/ivorysql/ivory-operator - newTag: v4.0 + newTag: v5.0 patchesJson6902: - target: { group: apps, version: v1, kind: Deployment, name: ivyo } diff --git a/examples/kustomize/install/manager/manager.yaml b/examples/kustomize/install/manager/manager.yaml index 099d49a689..0bb9bc8dce 100644 --- a/examples/kustomize/install/manager/manager.yaml +++ b/examples/kustomize/install/manager/manager.yaml @@ -26,10 +26,10 @@ spec: fieldPath: metadata.namespace - name: IVORY_DEBUG value: "true" - - name: RELATED_IMAGE_IVORY_3 - value: "docker.io/ivorysql/ivorysql:ubi8-4.5-4.0-1" + - name: RELATED_IMAGE_IVORY_5 + value: "docker.io/ivorysql/ivorysql:ubi8-5.0-5.0-1" - name: RELATED_IMAGE_PGBACKREST - value: "docker.io/ivorysql/pgbackrest:ubi8-2.54.1-4.0-1" + value: "docker.io/ivorysql/pgbackrest:ubi8-2.56.0-5.0-1" securityContext: allowPrivilegeEscalation: false diff --git a/examples/kustomize/install/singlenamespace/kustomization.yaml b/examples/kustomize/install/singlenamespace/kustomization.yaml index 3cea7bd7eb..1f682d60dd 100644 --- a/examples/kustomize/install/singlenamespace/kustomization.yaml +++ b/examples/kustomize/install/singlenamespace/kustomization.yaml @@ -13,7 +13,7 @@ bases: images: - name: ivory-operator newName: docker.io/ivorysql/ivory-operator - newTag: v4.0 + newTag: v5.0 patchesJson6902: - target: { group: apps, version: v1, kind: Deployment, name: ivyo } diff --git a/internal/controller/ivorycluster/pgbackrest_test.go b/internal/controller/ivorycluster/pgbackrest_test.go index 6dd15908a0..5a17a94f80 100644 --- a/internal/controller/ivorycluster/pgbackrest_test.go +++ b/internal/controller/ivorycluster/pgbackrest_test.go @@ -2102,7 +2102,7 @@ func TestReconcileCloudBasedDataSource(t *testing.T) { result: testResult{ configCount: 1, jobCount: 1, pvcCount: 1, expectedClusterCondition: nil, - conf: "|\n # Generated by ivory-operator. DO NOT EDIT.\n # Your changes will not be saved.\n\n [global]\n log-path = /pgdata/pgbackrest/log\n repo1-path = /pgbackrest/repo1\n\n [db]\n pg-version-force = 17\n pg1-path = /pgdata/pg13\n pg1-port = 5432\n pg1-socket-path = /tmp/postgres\n", + conf: "|\n # Generated by ivory-operator. DO NOT EDIT.\n # Your changes will not be saved.\n\n [global]\n log-path = /pgdata/pgbackrest/log\n repo1-path = /pgbackrest/repo1\n\n [db]\n pg-version-force = 18\n pg1-path = /pgdata/pg13\n pg1-port = 5432\n pg1-socket-path = /tmp/postgres\n", }, }, { desc: "global/configuration set", @@ -2119,7 +2119,7 @@ func TestReconcileCloudBasedDataSource(t *testing.T) { result: testResult{ configCount: 1, jobCount: 1, pvcCount: 1, expectedClusterCondition: nil, - conf: "|\n # Generated by ivory-operator. DO NOT EDIT.\n # Your changes will not be saved.\n\n [global]\n log-path = /pgdata/pgbackrest/log\n repo1-path = elephant\n\n [db]\n pg-version-force = 17\n pg1-path = /pgdata/pg13\n pg1-port = 5432\n pg1-socket-path = /tmp/postgres\n", + conf: "|\n # Generated by ivory-operator. DO NOT EDIT.\n # Your changes will not be saved.\n\n [global]\n log-path = /pgdata/pgbackrest/log\n repo1-path = elephant\n\n [db]\n pg-version-force = 18\n pg1-path = /pgdata/pg13\n pg1-port = 5432\n pg1-socket-path = /tmp/postgres\n", }, }, { desc: "invalid option: stanza", @@ -2134,7 +2134,7 @@ func TestReconcileCloudBasedDataSource(t *testing.T) { result: testResult{ configCount: 1, jobCount: 0, pvcCount: 1, expectedClusterCondition: nil, - conf: "|\n # Generated by ivory-operator. DO NOT EDIT.\n # Your changes will not be saved.\n\n [global]\n log-path = /pgdata/pgbackrest/log\n repo1-path = /pgbackrest/repo1\n\n [db]\n pg-version-force = 17\n pg1-path = /pgdata/pg13\n pg1-port = 5432\n pg1-socket-path = /tmp/postgres\n", + conf: "|\n # Generated by ivory-operator. DO NOT EDIT.\n # Your changes will not be saved.\n\n [global]\n log-path = /pgdata/pgbackrest/log\n repo1-path = /pgbackrest/repo1\n\n [db]\n pg-version-force = 18\n pg1-path = /pgdata/pg13\n pg1-port = 5432\n pg1-socket-path = /tmp/postgres\n", }, }, { desc: "cluster bootstrapped init condition missing", @@ -2153,7 +2153,7 @@ func TestReconcileCloudBasedDataSource(t *testing.T) { Reason: "ClusterAlreadyBootstrapped", Message: "The cluster is already bootstrapped", }, - conf: "|\n # Generated by ivory-operator. DO NOT EDIT.\n # Your changes will not be saved.\n\n [global]\n log-path = /pgdata/pgbackrest/log\n repo1-path = /pgbackrest/repo1\n\n [db]\n pg-version-force = 17\n pg1-path = /pgdata/pg13\n pg1-port = 5432\n pg1-socket-path = /tmp/postgres\n", + conf: "|\n # Generated by ivory-operator. DO NOT EDIT.\n # Your changes will not be saved.\n\n [global]\n log-path = /pgdata/pgbackrest/log\n repo1-path = /pgbackrest/repo1\n\n [db]\n pg-version-force = 18\n pg1-path = /pgdata/pg13\n pg1-port = 5432\n pg1-socket-path = /tmp/postgres\n", }, }} diff --git a/internal/pgbackrest/config.go b/internal/pgbackrest/config.go index d81dc3ad5e..e3a096ab00 100644 --- a/internal/pgbackrest/config.go +++ b/internal/pgbackrest/config.go @@ -310,7 +310,7 @@ func populatePGInstanceConfigurationMap( stanza.Set("pg1-path", pgdataDir) stanza.Set("pg1-port", fmt.Sprint(pgPort)) stanza.Set("pg1-socket-path", ivory.SocketDirectory) - stanza.Set("pg-version-force", "17") + stanza.Set("pg-version-force", "18") return iniSectionSet{ "global": global, DefaultStanzaName: stanza, diff --git a/internal/pgbackrest/config_test.go b/internal/pgbackrest/config_test.go index 769478425d..e99bd1ea77 100644 --- a/internal/pgbackrest/config_test.go +++ b/internal/pgbackrest/config_test.go @@ -153,7 +153,7 @@ repo4-s3-region = earth repo4-type = s3 [db] -pg-version-force = 17 +pg-version-force = 18 pg1-path = /pgdata/pg12 pg1-port = 2345 pg1-socket-path = /tmp/postgres diff --git a/internal/pgbackrest/pgbackrest.go b/internal/pgbackrest/pgbackrest.go index fe62978bc9..45f7787967 100644 --- a/internal/pgbackrest/pgbackrest.go +++ b/internal/pgbackrest/pgbackrest.go @@ -70,7 +70,7 @@ declare -r hash="$1" stanza="$2" message="$3" cmd="$4" if [[ "$(< /etc/pgbackrest/conf.d/config-hash)" != "${hash}" ]]; then printf >&2 "%s" "${message}"; exit 1; else - pgbackrest "${cmd}" --pg-version-force=17 --stanza="${stanza}" + pgbackrest "${cmd}" --pg-version-force=18 --stanza="${stanza}" fi ` if err := exec(ctx, nil, &stdout, &stderr, "bash", "-ceu", "--", diff --git a/internal/pgbackrest/pgbackrest_test.go b/internal/pgbackrest/pgbackrest_test.go index 27bfd7c323..f4aab2338d 100644 --- a/internal/pgbackrest/pgbackrest_test.go +++ b/internal/pgbackrest/pgbackrest_test.go @@ -38,7 +38,7 @@ declare -r hash="$1" stanza="$2" message="$3" cmd="$4" if [[ "$(< /etc/pgbackrest/conf.d/config-hash)" != "${hash}" ]]; then printf >&2 "%s" "${message}"; exit 1; else - pgbackrest "${cmd}" --pg-version-force=17 --stanza="${stanza}" + pgbackrest "${cmd}" --pg-version-force=18 --stanza="${stanza}" fi `, "-", "7f5d4d5bdc", "db", "ivory operator error: pgBackRest config hash mismatch", diff --git a/ivyo_release_notes.md b/ivyo_release_notes.md index 302526936c..10a42b25ac 100644 --- a/ivyo_release_notes.md +++ b/ivyo_release_notes.md @@ -43,4 +43,17 @@ - timescaledb 2.17.2 - wal2json 2.6 - pgnodemx 1.7 - +## IvorySQL Operator 5.0 +- 数据库版本支持**ivorysql 5.0** +- 组件版本升级 + - pgBackrest 2.56 + - PgBouncer 1.23.0 + - Patroni 4.0.7 + - pgAdmin4 9.9 + - pgExporter 0.17.0 +- 插件版本升级 + - PostGIS 3.5.4 + - pgaudit 18.0 + - pg_cron 1.6.7 + - wal2json 2.6 + - pgnodemx 1.7 diff --git a/pkg/apis/ivory-operator.ivorysql.org/v1beta1/ivorycluster_types.go b/pkg/apis/ivory-operator.ivorysql.org/v1beta1/ivorycluster_types.go index 333512cba4..fb48cd4e7a 100644 --- a/pkg/apis/ivory-operator.ivorysql.org/v1beta1/ivorycluster_types.go +++ b/pkg/apis/ivory-operator.ivorysql.org/v1beta1/ivorycluster_types.go @@ -123,7 +123,7 @@ type IvoryClusterSpec struct { // The major version of PostgreSQL installed in the PostgreSQL image // +kubebuilder:validation:Required // +kubebuilder:validation:Minimum=10 - // +kubebuilder:validation:Maximum=17 + // +kubebuilder:validation:Maximum=18 // +operator-sdk:csv:customresourcedefinitions:type=spec,order=1 PostgresVersion int `json:"postgresVersion"` diff --git a/pkg/apis/ivory-operator.ivorysql.org/v1beta1/pgupgrade_types.go b/pkg/apis/ivory-operator.ivorysql.org/v1beta1/pgupgrade_types.go index d1345ae7b3..f4593a0072 100644 --- a/pkg/apis/ivory-operator.ivorysql.org/v1beta1/pgupgrade_types.go +++ b/pkg/apis/ivory-operator.ivorysql.org/v1beta1/pgupgrade_types.go @@ -59,7 +59,7 @@ type IVYUpgradeSpec struct { // The major version of IvorySQL before the upgrade. // +kubebuilder:validation:Required // +kubebuilder:validation:Minimum=10 - // +kubebuilder:validation:Maximum=17 + // +kubebuilder:validation:Maximum=18 FromIvoryVersion int `json:"fromIvoryVersion"` // TODO(benjaminjb): define webhook validation to make sure @@ -70,7 +70,7 @@ type IVYUpgradeSpec struct { // The major version of IvorySQL to be upgraded to. // +kubebuilder:validation:Required // +kubebuilder:validation:Minimum=10 - // +kubebuilder:validation:Maximum=17 + // +kubebuilder:validation:Maximum=18 ToIvoryVersion int `json:"toIvoryVersion"` // The image name to use for IvorySQL containers after upgrade. diff --git a/testing/kuttl/e2e-other/exporter-upgrade/00--cluster.yaml b/testing/kuttl/e2e-other/exporter-upgrade/00--cluster.yaml index 71f8a3acad..e169494f11 100644 --- a/testing/kuttl/e2e-other/exporter-upgrade/00--cluster.yaml +++ b/testing/kuttl/e2e-other/exporter-upgrade/00--cluster.yaml @@ -3,8 +3,8 @@ kind: IvoryCluster metadata: name: exporter spec: - postgresVersion: 16 - image: docker.io/ivorysql/ivorysql:ubi8-4.5-4.0-1 + postgresVersion: 18 + image: docker.io/ivorysql/ivorysql:ubi8-5.0-5.0-1 instances: - name: instance1 dataVolumeClaimSpec: diff --git a/testing/kuttl/e2e-other/exporter-upgrade/02--update-cluster.yaml b/testing/kuttl/e2e-other/exporter-upgrade/02--update-cluster.yaml index 72dd8a188a..c3acdb4e8a 100644 --- a/testing/kuttl/e2e-other/exporter-upgrade/02--update-cluster.yaml +++ b/testing/kuttl/e2e-other/exporter-upgrade/02--update-cluster.yaml @@ -3,5 +3,5 @@ kind: IvoryCluster metadata: name: exporter spec: - postgresVersion: 16 - image: docker.io/ivorysql/ivorysql:ubi8-4.5-4.0-1 + postgresVersion: 18 + image: docker.io/ivorysql/ivorysql:ubi8-5.0-5.0-1 From e67969d794bdab4452509d9bae33e048ed6f75a8 Mon Sep 17 00:00:00 2001 From: JiaoShuntian Date: Fri, 21 Nov 2025 23:21:55 +0800 Subject: [PATCH 2/2] update LD_PRELOAD for ivyo 5.0 --- internal/controller/ivorycluster/util.go | 4 ++-- internal/controller/ivorycluster/util_test.go | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/internal/controller/ivorycluster/util.go b/internal/controller/ivorycluster/util.go index 83bb785b12..4d3c6f9dde 100644 --- a/internal/controller/ivorycluster/util.go +++ b/internal/controller/ivorycluster/util.go @@ -109,7 +109,7 @@ NSS_WRAPPER_DIR="/tmp/nss_wrapper/${NSS_WRAPPER_SUBDIR}" NSS_WRAPPER_PASSWD="${NSS_WRAPPER_DIR}/passwd" NSS_WRAPPER_GROUP="${NSS_WRAPPER_DIR}/group" -export LD_PRELOAD=/usr/lib64/libnss_wrapper.so:/lib64/libssl.so.1.1:/lib64/libcrypto.so.1.1 +export LD_PRELOAD=/usr/lib64/libnss_wrapper.so export NSS_WRAPPER_PASSWD="${NSS_WRAPPER_PASSWD}" export NSS_WRAPPER_GROUP="${NSS_WRAPPER_GROUP}" @@ -194,7 +194,7 @@ func addNSSWrapper(image string, imagePullPolicy corev1.PullPolicy, template *co passwd := fmt.Sprintf(nssWrapperDir, "ivory", "passwd") group := fmt.Sprintf(nssWrapperDir, "ivory", "group") template.Spec.Containers[i].Env = append(template.Spec.Containers[i].Env, []corev1.EnvVar{ - {Name: "LD_PRELOAD", Value: "/usr/lib64/libnss_wrapper.so:/lib64/libssl.so.1.1:/lib64/libcrypto.so.1.1"}, + {Name: "LD_PRELOAD", Value: "/usr/lib64/libnss_wrapper.so"}, {Name: "NSS_WRAPPER_PASSWD", Value: passwd}, {Name: "NSS_WRAPPER_GROUP", Value: group}, }...) diff --git a/internal/controller/ivorycluster/util_test.go b/internal/controller/ivorycluster/util_test.go index 8e066d0c7d..be99f35d82 100644 --- a/internal/controller/ivorycluster/util_test.go +++ b/internal/controller/ivorycluster/util_test.go @@ -268,7 +268,7 @@ func TestAddNSSWrapper(t *testing.T) { }} expectedEnv := []corev1.EnvVar{ - {Name: "LD_PRELOAD", Value: "/usr/lib64/libnss_wrapper.so:/lib64/libssl.so.1.1:/lib64/libcrypto.so.1.1"}, + {Name: "LD_PRELOAD", Value: "/usr/lib64/libnss_wrapper.so"}, {Name: "NSS_WRAPPER_PASSWD", Value: "/tmp/nss_wrapper/ivory/passwd"}, {Name: "NSS_WRAPPER_GROUP", Value: "/tmp/nss_wrapper/ivory/group"}, }