Skip to content

test(ci): pin RHDH 1.10 RC image (1.10-132) in showcase value files#4930

Open
gustavolira wants to merge 6 commits into
redhat-developer:release-1.10from
gustavolira:pin-rhdh-1.10-128-rc-image
Open

test(ci): pin RHDH 1.10 RC image (1.10-132) in showcase value files#4930
gustavolira wants to merge 6 commits into
redhat-developer:release-1.10from
gustavolira:pin-rhdh-1.10-128-rc-image

Conversation

@gustavolira

@gustavolira gustavolira commented Jun 8, 2026

Copy link
Copy Markdown
Member

PR Summary by Qodo

Pin RHDH 1.10 RC image for release-1.10 e2e showcase deployments
⚙️ Configuration changes 🧪 Tests 🕐 10-20 Minutes

Grey Divider

Walkthroughs

Description
• Pin showcase Helm value files to the RHDH 1.10 RC image for release-1.10 e2e runs.
• Force CI image env vars to override Helm --set image parameters during RC validation.
• Document that CI may still override images via upstream.backstage.image.* flags.
Diagram
graph TD
  J["release-1.10 e2e job"] --> ENV[".ci/pipelines/env_variables.sh"] --> SET["IMAGE_* overrides"] --> HELM["helm::get_image_params()"] --> CMD["helm upgrade --set upstream.backstage.image.*"] --> VAL["values_showcase*.yaml"] --> IMG{{"quay.io/rhdh-hub-rhel9:1.10-135"}}
  CMD -. "overrides" .-> VAL
Loading
High-Level Assessment

The following are alternative approaches to this PR:

1. Conditional override gated by a CI flag
  • ➕ Avoids hard-coding RC behavior for non-RC jobs
  • ➕ Makes rollback safer (toggle flag rather than revert commit)
  • ➖ Requires touching job definitions or adding a new pipeline variable
  • ➖ Slightly more logic in env_variables.sh / pipeline config
2. Change Helm wrapper to only emit --set when IMAGE_* is explicitly provided
  • ➕ Keeps value files as the source of truth by default
  • ➕ Reduces surprise overrides across all jobs
  • ➖ Broader behavioral change across CI; higher regression risk
  • ➖ May require auditing all callers that rely on current defaults

Recommendation: Given helm::get_image_params currently injects --set flags that override value files, forcing IMAGE_* in env_variables.sh is a pragmatic short-term way to guarantee the RC image is deployed. To reduce accidental long-lived pinning, consider gating this block behind an explicit CI variable (e.g., FORCE_RC_IMAGE=true) so the behavior can be toggled per job without a revert.

Grey Divider

File Changes

Other (3)
env_variables.sh Force RHDH RC image via IMAGE_* env vars for e2e jobs +10/-0

Force RHDH RC image via IMAGE_* env vars for e2e jobs

• Adds a temporary block that sets IMAGE_REGISTRY, IMAGE_REPO/QUAY_REPO, and TAG_NAME to a pinned RHDH 1.10 RC image version. Includes comments explaining that Helm --set injection overrides value files and this must be reverted after RC validation.

.ci/pipelines/env_variables.sh


values_showcase-rbac.yaml Pin RBAC showcase values to quay.io RHDH 1.10 RC image +5/-1

Pin RBAC showcase values to quay.io RHDH 1.10 RC image

• Replaces the prior comment-only image section with explicit registry/repository/tag entries pointing at quay.io/rhdh/rhdh-hub-rhel9:1.10-135. Documents that CI may still override these values via upstream.backstage.image.* --set flags.

.ci/pipelines/value_files/values_showcase-rbac.yaml


values_showcase.yaml Pin showcase values to quay.io RHDH 1.10 RC image +5/-1

Pin showcase values to quay.io RHDH 1.10 RC image

• Adds explicit image registry/repository/tag values for the showcase deployment to use quay.io/rhdh/rhdh-hub-rhel9:1.10-135 by default. Notes that CI can override via upstream.backstage.image.* parameters.

.ci/pipelines/value_files/values_showcase.yaml


Grey Divider

Qodo Logo

gustavolira and others added 2 commits June 8, 2026 20:19
…skip-build]

Point values_showcase.yaml and values_showcase-rbac.yaml at the RHDH 1.10
RC image quay.io/rhdh/rhdh-hub-rhel9:1.10-132 for release-1.10 e2e testing.

Note: CI may override the image via --set upstream.backstage.image.*
(IMAGE_REGISTRY/IMAGE_REPO/TAG_NAME) depending on the job.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…kip-build]

Override IMAGE_REGISTRY/IMAGE_REPO/TAG_NAME in env_variables.sh to force
the release-1.10 e2e jobs to deploy quay.io/rhdh/rhdh-hub-rhel9:1.10-132.

helm::get_image_params() (lib/helm.sh) injects these via
--set upstream.backstage.image.*, which overrides value files.
Revert this block once RC testing is complete.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@openshift-ci openshift-ci Bot requested review from rostalan and subhashkhileri June 8, 2026 23:21
@rhdh-qodo-merge

rhdh-qodo-merge Bot commented Jun 8, 2026

Copy link
Copy Markdown

Code Review by Qodo

🐞 Bugs (2) 📘 Rule violations (0)

Grey Divider


Remediation recommended

1. Image pin lacks scope 🐞 Bug ≡ Correctness
Description
env_variables.sh now unconditionally overwrites IMAGE_REGISTRY/IMAGE_REPO/TAG_NAME with the RC image
values, clobbering any caller-provided overrides. Since openshift-ci-tests.sh sources
env_variables.sh before dispatching to specific job handlers, all jobs using this shared entrypoint
will deploy quay.io/rhdh/rhdh-hub-rhel9:1.10-132 even when a different image/tag was requested.
Code

.ci/pipelines/env_variables.sh[R73-82]

+# TEMPORARY (RHDH 1.10 RC validation): force the release-1.10 e2e jobs to deploy the
+# RHDH 1.10 RC image quay.io/rhdh/rhdh-hub-rhel9:1.10-132.
+# helm::get_image_params() (lib/helm.sh) injects IMAGE_REGISTRY/IMAGE_REPO/TAG_NAME via
+# `--set upstream.backstage.image.*`, which overrides the value files, so the image must be
+# forced here to take effect. Revert this block once RC testing is complete.
+IMAGE_REGISTRY="quay.io"
+IMAGE_REPO="rhdh/rhdh-hub-rhel9"
+QUAY_REPO="${IMAGE_REPO}"
+TAG_NAME="1.10-132"
+
Relevance

⭐⭐⭐ High

Team previously made IMAGE_* overridable via defaults, not hard overrides (PRs #4463, #4714); pins
later removed (#4869).

PR-#4463
PR-#4714
PR-#4869

ⓘ Recommendations generated based on similar findings in past PRs

Evidence
The pin block overwrites previously-initialized environment values and is always applied because it
is sourced by the main CI entrypoint; those variables are then injected into Helm via --set,
overriding any values file configuration.

.ci/pipelines/env_variables.sh[13-29]
.ci/pipelines/env_variables.sh[73-82]
.ci/pipelines/openshift-ci-tests.sh[15-28]
.ci/pipelines/lib/helm.sh[214-239]

Agent prompt
The issue below was found during a code review. Follow the provided context and guidance below and implement a solution

## Issue description
`.ci/pipelines/env_variables.sh` unconditionally overwrites `IMAGE_REGISTRY`, `IMAGE_REPO`, `QUAY_REPO`, and `TAG_NAME` to the RC image. This clobbers any image/tag overrides supplied by the environment (including local overrides) and applies to every job that sources the shared CI entrypoint.

## Issue Context
`openshift-ci-tests.sh` sources `env_variables.sh` once at startup (before selecting a job handler), and `helm::get_image_params()` injects these variables via `--set upstream.backstage.image.*`, overriding value files.

## Fix Focus Areas
- Add a guard so the pin only applies in the intended scope (e.g., `RELEASE_BRANCH_NAME == release-1.10` and/or a specific `JOB_NAME` pattern), or make it opt-in via a dedicated env flag (e.g., `FORCE_RC_IMAGE=true`) while preserving the ability to override for other workflows.
- file/path[start_line-end_line]
 - .ci/pipelines/env_variables.sh[73-82]

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools



Informational

2. Stale RC image comment 🐞 Bug ⚙ Maintainability ⭐ New
Description
The TEMPORARY RC pin comment still references quay.io/rhdh/rhdh-hub-rhel9:1.10-132, but TAG_NAME
(and both showcase values files) now pin 1.10-135, which can mislead reviewers/debugging about what
image is actually intended.
Code

.ci/pipelines/env_variables.sh[81]

+TAG_NAME="1.10-135"
Relevance

⭐⭐⭐ High

Team often accepts comment/documentation fixes to avoid confusion (accepted in PR #4542, #4860).

PR-#4542
PR-#4860

ⓘ Recommendations generated based on similar findings in past PRs

Evidence
The RC pin comment states ...:1.10-132 while the actual pinned tag is 1.10-135 in TAG_NAME and
in both showcase values files, making the comment inaccurate.

.ci/pipelines/env_variables.sh[73-81]
.ci/pipelines/value_files/values_showcase.yaml[135-141]
.ci/pipelines/value_files/values_showcase-rbac.yaml[151-157]

Agent prompt
The issue below was found during a code review. Follow the provided context and guidance below and implement a solution

## Issue description
The TEMPORARY RC pin block comment mentions the RC image tag `1.10-132`, but the actual pinned tag is now `1.10-135` (and the values files match `1.10-135`). This makes the comment misleading.

## Issue Context
CI uses `TAG_NAME` (via `helm::get_image_params()` and `--set upstream.backstage.image.tag=...`) so the effective deployed image tag is controlled by `TAG_NAME`. The values files also document the pinned tag.

## Fix Focus Areas
- .ci/pipelines/env_variables.sh[73-81]
- .ci/pipelines/value_files/values_showcase.yaml[135-141]
- .ci/pipelines/value_files/values_showcase-rbac.yaml[151-157]

## Expected fix
Confirm the intended RC tag, then make all references consistent (either update the comment to `1.10-135`, or revert the tag values back to `1.10-132` if that was the intended pin).

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools


Grey Divider

Previous review results

Review updated until commit b9466af

Results up to commit 2dd6dc0


🐞 Bugs (1) 📘 Rule violations (0) 📎 Requirement gaps (0) 🎨 UX issues (0) 🔗 Cross-repo conflicts (0)


Remediation recommended
1. Image pin lacks scope 🐞 Bug ≡ Correctness
Description
env_variables.sh now unconditionally overwrites IMAGE_REGISTRY/IMAGE_REPO/TAG_NAME with the RC image
values, clobbering any caller-provided overrides. Since openshift-ci-tests.sh sources
env_variables.sh before dispatching to specific job handlers, all jobs using this shared entrypoint
will deploy quay.io/rhdh/rhdh-hub-rhel9:1.10-132 even when a different image/tag was requested.
Code

.ci/pipelines/env_variables.sh[R73-82]

+# TEMPORARY (RHDH 1.10 RC validation): force the release-1.10 e2e jobs to deploy the
+# RHDH 1.10 RC image quay.io/rhdh/rhdh-hub-rhel9:1.10-132.
+# helm::get_image_params() (lib/helm.sh) injects IMAGE_REGISTRY/IMAGE_REPO/TAG_NAME via
+# `--set upstream.backstage.image.*`, which overrides the value files, so the image must be
+# forced here to take effect. Revert this block once RC testing is complete.
+IMAGE_REGISTRY="quay.io"
+IMAGE_REPO="rhdh/rhdh-hub-rhel9"
+QUAY_REPO="${IMAGE_REPO}"
+TAG_NAME="1.10-132"
+
Relevance

⭐⭐⭐ High

Team previously made IMAGE_* overridable via defaults, not hard overrides (PRs #4463, #4714); pins
later removed (#4869).

PR-#4463
PR-#4714
PR-#4869

ⓘ Recommendations generated based on similar findings in past PRs

Evidence
The pin block overwrites previously-initialized environment values and is always applied because it
is sourced by the main CI entrypoint; those variables are then injected into Helm via --set,
overriding any values file configuration.

.ci/pipelines/env_variables.sh[13-29]
.ci/pipelines/env_variables.sh[73-82]
.ci/pipelines/openshift-ci-tests.sh[15-28]
.ci/pipelines/lib/helm.sh[214-239]

Agent prompt
The issue below was found during a code review. Follow the provided context and guidance below and implement a solution

## Issue description
`.ci/pipelines/env_variables.sh` unconditionally overwrites `IMAGE_REGISTRY`, `IMAGE_REPO`, `QUAY_REPO`, and `TAG_NAME` to the RC image. This clobbers any image/tag overrides supplied by the environment (including local overrides) and applies to every job that sources the shared CI entrypoint.

## Issue Context
`openshift-ci-tests.sh` sources `env_variables.sh` once at startup (before selecting a job handler), and `helm::get_image_params()` injects these variables via `--set upstream.backstage.image.*`, overriding value files.

## Fix Focus Areas
- Add a guard so the pin only applies in the intended scope (e.g., `RELEASE_BRANCH_NAME == release-1.10` and/or a specific `JOB_NAME` pattern), or make it opt-in via a dedicated env flag (e.g., `FORCE_RC_IMAGE=true`) while preserving the ability to override for other workflows.
- file/path[start_line-end_line]
 - .ci/pipelines/env_variables.sh[73-82]

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools


Qodo Logo

@github-actions

github-actions Bot commented Jun 8, 2026

Copy link
Copy Markdown
Contributor

The container image build and publish workflows were skipped (either due to [skip-build] tag or no relevant changes with existing image).

@gustavolira

Copy link
Copy Markdown
Member Author

/test ?

@gustavolira

Copy link
Copy Markdown
Member Author

/test e2e-ocp-helm-nightly

@gustavolira gustavolira reopened this Jun 11, 2026
@rhdh-qodo-merge

rhdh-qodo-merge Bot commented Jun 11, 2026

Copy link
Copy Markdown

Code review by qodo was updated up to the latest commit b9466af

@github-actions

Copy link
Copy Markdown
Contributor

The container image build workflow finished with status: cancelled.

@github-actions

Copy link
Copy Markdown
Contributor

The container image build and publish workflows were skipped (either due to [skip-build] tag or no relevant changes with existing image).

@github-actions

Copy link
Copy Markdown
Contributor

The container image build and publish workflows were skipped (either due to [skip-build] tag or no relevant changes with existing image).

@sonarqubecloud

Copy link
Copy Markdown

@gustavolira

Copy link
Copy Markdown
Member Author

/test ?

@gustavolira

Copy link
Copy Markdown
Member Author

/test e2e-ocp-helm-nightly

@gustavolira

Copy link
Copy Markdown
Member Author

/test e2e-ocp-operator-nightly

@openshift-ci

openshift-ci Bot commented Jun 11, 2026

Copy link
Copy Markdown

@gustavolira: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/prow/e2e-ocp-helm-nightly e00ff6f link false /test e2e-ocp-helm-nightly

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant