Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 16 additions & 16 deletions .github/workflows/test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -64,9 +64,9 @@ jobs:
with:
k3s-channel: "${{ matrix.kubernetes }}"
prefetch-images: |
docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.1-1
docker.io/ivorysql/pgbouncer:ubi9-1.24.0-5.1-1
docker.io/ivorysql/ivorysql:ubi9-5.1-5.1-1
docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.3-1
docker.io/ivorysql/pgbouncer:ubi9-1.24.0-5.3-1
docker.io/ivorysql/ivorysql:ubi9-5.3-5.3-1

- run: make createnamespaces check-envtest-existing
env:
Expand Down Expand Up @@ -98,12 +98,12 @@ jobs:
with:
k3s-channel: "${{ matrix.kubernetes }}"
prefetch-images: |
docker.io/ivorysql/pgadmin:ubi9-9.9-5.1-1
docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.1-1
docker.io/ivorysql/pgbouncer:ubi9-1.24.0-5.1-1
docker.io/ivorysql/postgres-exporter:ubi9-0.17.0-5.1-1
docker.io/ivorysql/ivorysql:ubi9-5.1-5.1-1
docker.io/ivorysql/postgis:ubi9-3.5-5.1-1
docker.io/ivorysql/pgadmin:ubi9-9.9-5.3-1
docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.3-1
docker.io/ivorysql/pgbouncer:ubi9-1.24.0-5.3-1
docker.io/ivorysql/postgres-exporter:ubi9-0.17.0-5.3-1
docker.io/ivorysql/ivorysql:ubi9-5.3-5.3-1
docker.io/ivorysql/postgis:ubi9-3.5-5.3-1
registry.developers.crunchydata.com/crunchydata/crunchy-upgrade:ubi9-5.3.1-0
- run: go mod download
- name: Build executable
Expand All @@ -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:ubi9-9.9-5.1-1' \
--env 'RELATED_IMAGE_PGBACKREST=docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.1-1' \
--env 'RELATED_IMAGE_PGBOUNCER=docker.io/ivorysql/pgbouncer:ubi9-1.24.0-5.1-1' \
--env 'RELATED_IMAGE_PGEXPORTER=docker.io/ivorysql/postgres-exporter:ubi9-0.17.0-5.1-1' \
--env 'RELATED_IMAGE_PGADMIN=docker.io/ivorysql/pgadmin:ubi9-9.9-5.3-1' \
--env 'RELATED_IMAGE_PGBACKREST=docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.3-1' \
--env 'RELATED_IMAGE_PGBOUNCER=docker.io/ivorysql/pgbouncer:ubi9-1.24.0-5.3-1' \
--env 'RELATED_IMAGE_PGEXPORTER=docker.io/ivorysql/postgres-exporter:ubi9-0.17.0-5.3-1' \
--env 'RELATED_IMAGE_PGUPGRADE=registry.developers.crunchydata.com/crunchydata/crunchy-upgrade:ubi9-5.3.1-0' \
--env 'RELATED_IMAGE_IVORY_18=docker.io/ivorysql/ivorysql:ubi9-5.1-5.1-1' \
--env 'RELATED_IMAGE_IVORY_18_GIS_3.5=docker.io/ivorysql/postgis:ubi9-3.5-5.1-1' \
--env 'RELATED_IMAGE_IVORY_18=docker.io/ivorysql/ivorysql:ubi9-5.3-5.3-1' \
--env 'RELATED_IMAGE_IVORY_18_GIS_3.5=docker.io/ivorysql/postgis:ubi9-3.5-5.3-1' \
--env 'IVYO_FEATURE_GATES=TablespaceVolumes=true' \
--name 'ivory-operator' ubuntu \
ivory-operator
Expand All @@ -139,7 +139,7 @@ jobs:
KUTTL_PG_UPGRADE_TO_VERSION: '18'
KUTTL_PG_VERSION: '18'
KUTTL_POSTGIS_VERSION: '3.5'
KUTTL_IVORY_IMAGE: 'docker.io/ivorysql/ivorysql:ubi9-5.1-5.1-1'
KUTTL_IVORY_IMAGE: 'docker.io/ivorysql/ivorysql:ubi9-5.3-5.3-1'
- run: |
make check-kuttl && exit
failed=$?
Expand Down
4 changes: 2 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -205,8 +205,8 @@ check-kuttl: ## example command: make check-kuttl KUTTL_TEST='
generate-kuttl: export KUTTL_PG_UPGRADE_FROM_VERSION ?= 14
generate-kuttl: export KUTTL_PG_UPGRADE_TO_VERSION ?= 15
generate-kuttl: export KUTTL_PG_VERSION ?= 15
generate-kuttl: export KUTTL_POSTGIS_VERSION ?= 3.3
generate-kuttl: export KUTTL_IVORY_IMAGE ?= docker.io/ivorysql/ivorysql:ubi9-5.1-5.1-1
generate-kuttl: export KUTTL_POSTGIS_VERSION ?= 3.5
generate-kuttl: export KUTTL_IVORY_IMAGE ?= docker.io/ivorysql/ivorysql:ubi9-5.3-5.3-1
generate-kuttl: ## Generate kuttl tests
[ ! -d testing/kuttl/e2e-generated ] || rm -r testing/kuttl/e2e-generated
[ ! -d testing/kuttl/e2e-generated-other ] || rm -r testing/kuttl/e2e-generated-other
Expand Down
12 changes: 6 additions & 6 deletions config/manager/manager.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,19 +19,19 @@ spec:
- name: IVORY_DEBUG
value: "true"
- name: RELATED_IMAGE_IVORY_18
value: "docker.io/ivorysql/ivorysql:ubi9-5.1-5.1-1"
value: "docker.io/ivorysql/ivorysql:ubi9-5.3-5.3-1"
- name: RELATED_IMAGE_PGADMIN
value: "docker.io/ivorysql/pgadmin:ubi9-9.9-5.1-1"
value: "docker.io/ivorysql/pgadmin:ubi9-9.9-5.3-1"
- name: RELATED_IMAGE_PGBACKREST
value: "docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.1-1"
value: "docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.3-1"
- name: RELATED_IMAGE_PGBOUNCER
value: "docker.io/ivorysql/pgbouncer:ubi9-1.24.0-5.1-1"
value: "docker.io/ivorysql/pgbouncer:ubi9-1.24.0-5.3-1"
- name: RELATED_IMAGE_PGEXPORTER
value: "docker.io/ivorysql/postgres-exporter:ubi9-0.17.0-5.1-1"
value: "docker.io/ivorysql/postgres-exporter:ubi9-0.17.0-5.3-1"
- name: RELATED_IMAGE_PGUPGRADE
value: "registry.developers.crunchydata.com/crunchydata/crunchy-upgrade:ubi9-5.3.1-0"
- name: RELATED_IMAGE_POSTGRES_18_GIS_3.5
value: "docker.io/ivorysql/ivorysql-postgis:ubi9-3.5-5.1-1"
value: "docker.io/ivorysql/ivorysql-postgis:ubi9-3.5-5.3-1"
securityContext:
allowPrivilegeEscalation: false
capabilities: { drop: [ALL] }
Expand Down
4 changes: 2 additions & 2 deletions examples/ivorycluster/ivorycluster.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ kind: IvoryCluster
metadata:
name: hippo
spec:
image: docker.io/ivorysql/ivorysql:ubi9-5.1-5.1-1
image: docker.io/ivorysql/ivorysql:ubi9-5.3-5.3-1
postgresVersion: 15
instances:
- name: instance1
Expand All @@ -15,7 +15,7 @@ spec:
storage: 1Gi
backups:
pgbackrest:
image: docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.1-1
image: docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.3-1
repos:
- name: repo1
volume:
Expand Down
4 changes: 2 additions & 2 deletions examples/kustomize/azure/ivory.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ kind: IvoryCluster
metadata:
name: hippo-azure
spec:
image: docker.io/ivorysql/ivorysql:ubi9-5.1-5.1-1
image: docker.io/ivorysql/ivorysql:ubi9-5.3-5.3-1
postgresVersion: 15
instances:
- dataVolumeClaimSpec:
Expand All @@ -14,7 +14,7 @@ spec:
storage: 1Gi
backups:
pgbackrest:
image: docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.1-1
image: docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.3-1
configuration:
- secret:
name: ivyo-azure-creds
Expand Down
4 changes: 2 additions & 2 deletions examples/kustomize/gcs/ivory.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ kind: IvoryCluster
metadata:
name: hippo-gcs
spec:
image: docker.io/ivorysql/ivorysql:ubi9-5.1-5.1-1
image: docker.io/ivorysql/ivorysql:ubi9-5.3-5.3-1
postgresVersion: 15
instances:
- dataVolumeClaimSpec:
Expand All @@ -14,7 +14,7 @@ spec:
storage: 1Gi
backups:
pgbackrest:
image: docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.1-1
image: docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.3-1
configuration:
- secret:
name: ivyo-gcs-creds
Expand Down
4 changes: 2 additions & 2 deletions examples/kustomize/high-availability/ha-ivory.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ kind: IvoryCluster
metadata:
name: hippo-ha
spec:
image: docker.io/ivorysql/ivorysql:ubi9-5.1-5.1-1
image: docker.io/ivorysql/ivorysql:ubi9-5.3-5.3-1
postgresVersion: 15
instances:
- name: pgha1
Expand All @@ -26,7 +26,7 @@ spec:
ivory-operator.ivorysql.org/instance-set: pgha1
backups:
pgbackrest:
image: docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.1-1
image: docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.3-1
repos:
- name: repo1
volume:
Expand Down
4 changes: 2 additions & 2 deletions examples/kustomize/install/manager/manager.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -27,9 +27,9 @@ spec:
- name: IVORY_DEBUG
value: "true"
- name: RELATED_IMAGE_IVORY_5
value: "docker.io/ivorysql/ivorysql:ubi9-5.1-5.1-1"
value: "docker.io/ivorysql/ivorysql:ubi9-5.3-5.3-1"
Comment on lines 29 to +30
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Description: Check how RELATED_IMAGE_IVORY_* env vars are named across the codebase

echo "=== Checking RELATED_IMAGE_IVORY_* patterns ==="
rg -n 'RELATED_IMAGE_IVORY_[0-9]+' --type yaml --type go

echo ""
echo "=== Checking postgresVersion values in example manifests ==="
rg -n 'postgresVersion:' --type yaml

Repository: IvorySQL/ivory-operator

Length of output: 5960


🏁 Script executed:

#!/bin/bash
# Check the full content of the example manager.yaml file to understand its purpose

echo "=== Full content of examples/kustomize/install/manager/manager.yaml ==="
cat -n examples/kustomize/install/manager/manager.yaml

echo ""
echo "=== Compare with main config/manager/manager.yaml ==="
cat -n config/manager/manager.yaml | head -40

echo ""
echo "=== Check if there are comments or docs about IVORY_5 in the codebase ==="
rg -B 3 -A 3 'IVORY_5' --type yaml

Repository: IvorySQL/ivory-operator

Length of output: 3910


🏁 Script executed:

#!/bin/bash
# Check if examples/kustomize/install/manager/manager.yaml is referenced elsewhere

echo "=== Files referencing examples/kustomize/install/manager/manager.yaml ==="
rg -l 'examples/kustomize/install/manager/manager.yaml' 

echo ""
echo "=== Look for this path in test/CI files ==="
rg 'examples/kustomize/install' --type yaml --type go --type sh

echo ""
echo "=== Check if there are git history or comments about this file ==="
git log --oneline -- examples/kustomize/install/manager/manager.yaml | head -10

Repository: IvorySQL/ivory-operator

Length of output: 275


Change RELATED_IMAGE_IVORY_5 to RELATED_IMAGE_IVORY_18 for consistency.

This file uses RELATED_IMAGE_IVORY_5 pointing to docker.io/ivorysql/ivorysql:ubi9-5.3-5.3-1, while config/manager/manager.yaml uses RELATED_IMAGE_IVORY_18 pointing to the exact same image. The env var naming should be consistent across the codebase. Change to RELATED_IMAGE_IVORY_18 to align with the primary configuration.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@examples/kustomize/install/manager/manager.yaml` around lines 29 - 30,
Replace the environment variable name RELATED_IMAGE_IVORY_5 with
RELATED_IMAGE_IVORY_18 in the env block (so that RELATED_IMAGE_IVORY_18 points
to "docker.io/ivorysql/ivorysql:ubi9-5.3-5.3-1"), keeping the value unchanged;
update the occurrence in manager.yaml where the env var is declared so it
matches the RELATED_IMAGE_IVORY_18 used in config/manager/manager.yaml.

- name: RELATED_IMAGE_PGBACKREST
value: "docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.1-1"
value: "docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.3-1"

securityContext:
allowPrivilegeEscalation: false
Expand Down
4 changes: 2 additions & 2 deletions examples/kustomize/ivory/ivory.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ kind: IvoryCluster
metadata:
name: hippo
spec:
image: docker.io/ivorysql/ivorysql:ubi9-5.1-5.1-1
image: docker.io/ivorysql/ivorysql:ubi9-5.3-5.3-1
postgresVersion: 15
instances:
- name: instance1
Expand All @@ -15,7 +15,7 @@ spec:
storage: 1Gi
backups:
pgbackrest:
image: docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.1-1
image: docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.3-1
repos:
- name: repo1
volume:
Expand Down
4 changes: 2 additions & 2 deletions examples/kustomize/keycloak/ivory.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ kind: IvoryCluster
metadata:
name: keycloakdb
spec:
image: docker.io/ivorysql/ivorysql:ubi9-5.1-5.1-1
image: docker.io/ivorysql/ivorysql:ubi9-5.3-5.3-1
postgresVersion: 15
instances:
- replicas: 2
Expand All @@ -25,7 +25,7 @@ spec:
ivory-operator.ivorysql.org/instance-set: "00"
backups:
pgbackrest:
image: docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.1-1
image: docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.3-1
repos:
- name: repo1
volume:
Expand Down
4 changes: 2 additions & 2 deletions examples/kustomize/multi-backup-repo/ivory.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ kind: IvoryCluster
metadata:
name: hippo-multi-repo
spec:
image: docker.io/ivorysql/ivorysql:ubi9-5.1-5.1-1
image: docker.io/ivorysql/ivorysql:ubi9-5.3-5.3-1
postgresVersion: 15
instances:
- dataVolumeClaimSpec:
Expand All @@ -14,7 +14,7 @@ spec:
storage: 1Gi
backups:
pgbackrest:
image: docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.1-1
image: docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.3-1
configuration:
- secret:
name: ivyo-multi-repo-creds
Expand Down
4 changes: 2 additions & 2 deletions examples/kustomize/s3/ivory.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ kind: IvoryCluster
metadata:
name: hippo-s3
spec:
image: docker.io/ivorysql/ivorysql:ubi9-5.1-5.1-1
image: docker.io/ivorysql/ivorysql:ubi9-5.3-5.3-1
postgresVersion: 15
instances:
- dataVolumeClaimSpec:
Expand All @@ -14,7 +14,7 @@ spec:
storage: 1Gi
backups:
pgbackrest:
image: docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.1-1
image: docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.3-1
configuration:
- secret:
name: ivyo-s3-creds
Expand Down
2 changes: 1 addition & 1 deletion testing/kuttl/e2e-other/exporter-upgrade/00--cluster.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ metadata:
name: exporter
spec:
postgresVersion: 18
image: docker.io/ivorysql/ivorysql:ubi9-5.1-5.1-1
image: docker.io/ivorysql/ivorysql:ubi9-5.3-5.3-1
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

Exporter upgrade test is now a no-op.

Line 7 sets the initial cluster to 5.3, and testing/kuttl/e2e-other/exporter-upgrade/02--update-cluster.yaml Line 7 also updates to 5.3. This means the scenario no longer tests a real version transition.

Please set this initial image to the intended previous supported upgrade source version so the test actually validates upgrade behavior.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@testing/kuttl/e2e-other/exporter-upgrade/00--cluster.yaml` at line 7, The
initial cluster image in 00--cluster.yaml is the same version as the update
step, making the upgrade test a no-op; change the image value (the line
containing "image: docker.io/ivorysql/ivorysql:ubi9-5.3-5.3-1") to the intended
previous supported upgrade source tag (use the same
docker.io/ivorysql/ivorysql:... format but with the previous version) so it
differs from the target version used in 02--update-cluster.yaml and the test
exercises a real version transition.

instances:
- name: instance1
dataVolumeClaimSpec:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@ metadata:
name: exporter
spec:
postgresVersion: 18
image: docker.io/ivorysql/ivorysql:ubi9-5.1-5.1-1
image: docker.io/ivorysql/ivorysql:ubi9-5.3-5.3-1
Loading