Skip to content

OPRUN-4627: override catalog tag to 4.x when RELEASE_VERSION is 4.x and catalogd.yaml pins v5.0#210

Merged
openshift-merge-bot[bot] merged 1 commit into
openshift:mainfrom
tmshort:handle-5.1-special-case
Jun 2, 2026
Merged

OPRUN-4627: override catalog tag to 4.x when RELEASE_VERSION is 4.x and catalogd.yaml pins v5.0#210
openshift-merge-bot[bot] merged 1 commit into
openshift:mainfrom
tmshort:handle-5.1-special-case

Conversation

@tmshort

@tmshort tmshort commented May 29, 2026

Copy link
Copy Markdown
Contributor

Partially reverts #203: removes the ocp-release sentinel mechanism (GetCatalogImageTag, ClusterCatalogImageTag, applyCatalogImageTagOverride, and the associated Builder field and main.go changes).

Replaces it with a targeted check in renderHelmTemplate: when openshift/helm/catalogd.yaml (operator-framework-operator-controller) pins options.openshift.catalogs.version to "v5.0" and RELEASE_VERSION is a 4.x stream (the 4.23/5.0 co-release), substitute the 4.x catalog tag so images match the release stream. For 5.x releases, including 5.1 running against a "v5.0" or "v5.1" catalog, the value in catalogd.yaml is left untouched.

Summary by CodeRabbit

  • Bug Fixes

    • Catalog image tag resolution: OCP 5.1 is special-cased to use the v5.0 catalog tag; 4.x releases rewrite a loaded v5.0 catalog tag to the matching v., while 5.x releases preserve the loaded tag.
  • Refactor

    • Controller setup simplified to compute and apply catalog tags at render time instead of precomputing/storing them.
  • Tests

    • Legacy table test removed and replaced with focused tests driving behavior by release version.

@openshift-ci-robot openshift-ci-robot added the jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. label May 29, 2026
@openshift-ci-robot

openshift-ci-robot commented May 29, 2026

Copy link
Copy Markdown

@tmshort: This pull request references OPRUN-4627 which is a valid jira issue.

Details

In response to this:

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 openshift-eng/jira-lifecycle-plugin repository.

@coderabbitai

coderabbitai Bot commented May 29, 2026

Copy link
Copy Markdown

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository: openshift/coderabbit/.coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 599bd998-42b0-4495-93fe-292d33aa5d93

📥 Commits

Reviewing files that changed from the base of the PR and between fd19ccc and f20817c.

📒 Files selected for processing (6)
  • cmd/cluster-olm-operator/main.go
  • internal/versionutils/version_utils.go
  • internal/versionutils/version_utils_test.go
  • pkg/controller/builder.go
  • pkg/controller/helm.go
  • pkg/controller/helm_test.go
💤 Files with no reviewable changes (2)
  • internal/versionutils/version_utils_test.go
  • internal/versionutils/version_utils.go
🚧 Files skipped from review as they are similar to previous changes (3)
  • pkg/controller/builder.go
  • cmd/cluster-olm-operator/main.go
  • pkg/controller/helm.go

Walkthrough

Catalog-tag computation was moved out of Builder wiring; Builder no longer stores ClusterCatalogImageTag. GetCatalogImageTag now special-cases operator 5.1 to return v5.0 and its prior table-driven test was removed. Helm rendering uses RELEASE_VERSION-driven inline logic and tests were updated to drive behavior via RELEASE_VERSION.

Changes

Catalog tag and operator wiring

Layer / File(s) Summary
GetCatalogImageTag special-case and test removal
internal/versionutils/version_utils.go, internal/versionutils/version_utils_test.go
GetCatalogImageTag returns v5.0 for operator version 5.1 (TODO note added). The prior TestGetCatalogImageTag table-driven test was removed.
Builder struct removal
pkg/controller/builder.go
Removed exported Builder.ClusterCatalogImageTag field; Builder now holds Assets, Clients, ControllerContext, KnownRESTMappings, FeatureGate, and Infrastructure.
runOperator: relocate version computation & wiring
cmd/cluster-olm-operator/main.go
Moved operator image and OCP minor-version computation later in runOperator; runOperator now passes only FeatureGate and Infrastructure into controller.Builder and sets versionGetter from env.
Helm rendering inline override & tests
pkg/controller/helm.go, pkg/controller/helm_test.go
Removed sentinel and helper; added internal/versionutils import and inline RELEASE_VERSION-driven logic that, for 4.x releases, rewrites loaded options.openshift.catalogs.version when it is exactly v5.0 using GetCurrentOCPMinorVersion. Tests updated to set RELEASE_VERSION and assert the final tag for several release/catalog combinations.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

🚥 Pre-merge checks | ✅ 14 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 28.57% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (14 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately describes the main change: overriding the catalog tag to 4.x when RELEASE_VERSION is 4.x and catalogd.yaml pins v5.0.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Stable And Deterministic Test Names ✅ Passed Repository uses standard Go testing, not Ginkgo. All test names in modified test files are static and deterministic with no dynamic content, pod names, timestamps, UUIDs, or generated identifiers.
Test Structure And Quality ✅ Passed This repository does not use Ginkgo tests. The PR modifies standard Go unit tests using the testing package with table-driven patterns, not Ginkgo It/Describe blocks. The check is not applicable.
Microshift Test Compatibility ✅ Passed This PR contains no new Ginkgo e2e tests. The repository is a Go controller with only unit tests using standard Go testing, not Ginkgo e2e patterns. Check is not applicable.
Single Node Openshift (Sno) Test Compatibility ✅ Passed No Ginkgo e2e tests are added in this PR. Changes are limited to application code and standard Go unit tests for the cluster-olm-operator, making the SNO test compatibility check not applicable.
Topology-Aware Scheduling Compatibility ✅ Passed PR introduces only catalog image tag version handling, no new scheduling constraints, affinity rules, node selectors, or topology-unaware logic. Existing topology-aware code remains unchanged.
Ote Binary Stdout Contract ✅ Passed This PR does not introduce new non-JSON stdout writes in process-level code. New klog calls use stderr by default; pre-existing fmt.Println calls in main.go remain unchanged.
Ipv6 And Disconnected Network Test Compatibility ✅ Passed PR does not add Ginkgo e2e tests. All test files use standard Go testing package with table-driven patterns, not Ginkgo Describe/It/Context constructs. Check is not applicable.
No-Weak-Crypto ✅ Passed Pull request contains no weak cryptography: no MD5/SHA1/DES/RC4/3DES/Blowfish/ECB algorithms, no custom crypto implementations, and no insecure secret comparisons detected across all modified files.
Container-Privileges ✅ Passed PR modifies only Go source code files (.go), not K8s manifests. No container privilege configurations were added or changed. Existing manifests show proper security defaults.
No-Sensitive-Data-In-Logs ✅ Passed No logging exposes sensitive data. The new "Calculated values" log statement outputs non-sensitive Helm configuration (feature flags, topology, image versions), not credentials or secrets.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Comment @coderabbitai help to get the list of available commands and usage tips.

@openshift-ci openshift-ci Bot requested review from ankitathomas and grokspawn May 29, 2026 20:21
@openshift-ci

openshift-ci Bot commented May 29, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: tmshort

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci openshift-ci Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label May 29, 2026
@tmshort

tmshort commented May 29, 2026

Copy link
Copy Markdown
Contributor Author

Comment thread internal/versionutils/version_utils.go Outdated
Comment on lines 67 to 73
// TODO: Remove after 4.23/5.0 branch cut; on the main branch replace "ocp-release" in
// openshift/helm/catalogd.yaml (github.com/openshift/operator-framework-operator-controller) with "v5.0".
// OCP 5.1 uses v5.0 catalog images until the 5.1 catalogs are available.
if version.Major == 5 && version.Minor == 1 {
return "v5.0"
}
return fmt.Sprintf("v%d.%d", version.Major, version.Minor)

@joelanford joelanford May 29, 2026

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Something that was brought up today by @grokspawn. Instead of using ocp-release as a sentinel for "auto-version", it might be better to have specific code that handles just the "map 5.0 to 4.23" case:

name, tag := extractNameTag(imageRef)
if tag == "v5.0" and currentClusterVersion == "4.23" {
  tag = "v4.23"
}
imageRef = makeImageRef(name, tag)

If we did that, 5.1 would use 5.0 automatically until we change it, just like we've always done.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

I hear you. It's still code that needs to be deleted; one we branch, and are past 4.23 and no longer need this code.

The ocp-release sentinel could be reused; which is why I implemented it as generic.

Unfortunately, it doesn't seem to be a solution that isn't temporary and becomes tech-debt almost immediately and then needs to be deleted. I'm really disliking all solutions right now (says the person who doesn't want to deal with temporary, special-case code).

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Yeah, I think it's tech debt no matter what. But it seems like even more tech debt to have code that handles versions outside of 5.0 and 4.23. Seems like the approach Jordan and I were mulling over minimizes the tech debt and keeps our normal processes otherwise undisturbed?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

I basically think I did as suggested.

@ankitathomas

Copy link
Copy Markdown
Contributor

/retest

@tmshort tmshort force-pushed the handle-5.1-special-case branch from abda1ca to 03c183e Compare June 1, 2026 15:03
@tmshort tmshort changed the title OPRUN-4627: temporary: use v5.0 catalogs for OCP 5.1 until 5.1 catalogs are available OPRUN-4627: override catalog tag to 4.x when RELEASE_VERSION is 4.x and catalogd.yaml pins v5.0 Jun 1, 2026
@tmshort tmshort force-pushed the handle-5.1-special-case branch from 03c183e to fd19ccc Compare June 1, 2026 15:05

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🧹 Nitpick comments (1)
pkg/controller/helm.go (1)

84-99: ⚡ Quick win

Extract the catalog-tag rewrite into a shared helper.

This block is now duplicated in TestCatalogImageTagOverride, so the test can drift with the implementation and still stay green. Pulling it into a small helper would trim the nesting here and let the test exercise the same code path.

♻️ Proposed refactor
+func rewriteCatalogTagForRelease(values *helmvalues.HelmValues, releaseVersion string) error {
+	if !strings.HasPrefix(releaseVersion, "4.") {
+		return nil
+	}
+
+	currentCatalogVersion, found := values.GetStringValue("options.openshift.catalogs.version")
+	if !found || currentCatalogVersion != "v5.0" {
+		return nil
+	}
+
+	v, err := versionutils.GetCurrentOCPMinorVersion(releaseVersion)
+	if err != nil {
+		return fmt.Errorf("error parsing release version for catalog tag: %w", err)
+	}
+
+	if err := values.SetStringValue("options.openshift.catalogs.version", fmt.Sprintf("v%d.%d", v.Major, v.Minor)); err != nil {
+		return fmt.Errorf("error setting catalog image tag: %w", err)
+	}
+	return nil
+}
+
 	releaseVersion := os.Getenv("RELEASE_VERSION")
-	if strings.HasPrefix(releaseVersion, "4.") {
-		currentCatalogVersion, found := values.GetStringValue("options.openshift.catalogs.version")
-		if found && currentCatalogVersion == "v5.0" {
-			v, err := versionutils.GetCurrentOCPMinorVersion(releaseVersion)
-			if err != nil {
-				return fmt.Errorf("error parsing release version for catalog tag: %w", err)
-			}
-			if err := values.SetStringValue("options.openshift.catalogs.version", fmt.Sprintf("v%d.%d", v.Major, v.Minor)); err != nil {
-				return fmt.Errorf("error setting catalog image tag: %w", err)
-			}
-		}
+	if err := rewriteCatalogTagForRelease(values, releaseVersion); err != nil {
+		return err
 	}
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@pkg/controller/helm.go` around lines 84 - 99, Extract the duplicated
catalog-tag rewrite logic into a small shared helper (e.g. func
rewriteCatalogImageTag(values Values, releaseVersion string) error) that
encapsulates the checks for strings.HasPrefix(releaseVersion, "4."), reading
"options.openshift.catalogs.version" via values.GetStringValue, parsing the OCP
minor via versionutils.GetCurrentOCPMinorVersion, and calling
values.SetStringValue with the computed v{Major}.{Minor}; replace the inline
block in helm.go with a call to that helper and update
TestCatalogImageTagOverride to call/assert the same helper so both test and
implementation exercise identical code paths and return/propagate any errors
unchanged.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In `@pkg/controller/helm.go`:
- Around line 84-99: Extract the duplicated catalog-tag rewrite logic into a
small shared helper (e.g. func rewriteCatalogImageTag(values Values,
releaseVersion string) error) that encapsulates the checks for
strings.HasPrefix(releaseVersion, "4."), reading
"options.openshift.catalogs.version" via values.GetStringValue, parsing the OCP
minor via versionutils.GetCurrentOCPMinorVersion, and calling
values.SetStringValue with the computed v{Major}.{Minor}; replace the inline
block in helm.go with a call to that helper and update
TestCatalogImageTagOverride to call/assert the same helper so both test and
implementation exercise identical code paths and return/propagate any errors
unchanged.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository: openshift/coderabbit/.coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: b783ce46-d6f3-408a-a1ba-c105744c391e

📥 Commits

Reviewing files that changed from the base of the PR and between abda1ca and 03c183e.

📒 Files selected for processing (6)
  • cmd/cluster-olm-operator/main.go
  • internal/versionutils/version_utils.go
  • internal/versionutils/version_utils_test.go
  • pkg/controller/builder.go
  • pkg/controller/helm.go
  • pkg/controller/helm_test.go
💤 Files with no reviewable changes (2)
  • internal/versionutils/version_utils_test.go
  • internal/versionutils/version_utils.go

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🧹 Nitpick comments (1)
pkg/controller/helm.go (1)

84-99: ⚡ Quick win

Extract the catalog-override block into a helper to clear the nestif lint error.

The logic is correct and matches the PR intent. However, golangci-lint flags this block as exceeding the nestif complexity threshold (5), which can fail CI. Re-extracting it into a small helper (similar to the removed applyCatalogImageTagOverride) keeps renderHelmTemplate readable and resolves the lint error.

♻️ Proposed extraction
-	// OCP 4.23 and 5.0 are co-released. If catalogd.yaml pins "v5.0" but RELEASE_VERSION is
-	// a 4.x stream, substitute the 4.x catalog tag so images match the release stream.
-	// For 5.x releases (including 5.1) the value in catalogd.yaml is left untouched.
-	releaseVersion := os.Getenv("RELEASE_VERSION")
-	if strings.HasPrefix(releaseVersion, "4.") {
-		currentCatalogVersion, found := values.GetStringValue("options.openshift.catalogs.version")
-		if found && currentCatalogVersion == "v5.0" {
-			v, err := versionutils.GetCurrentOCPMinorVersion(releaseVersion)
-			if err != nil {
-				return fmt.Errorf("error parsing release version for catalog tag: %w", err)
-			}
-			if err := values.SetStringValue("options.openshift.catalogs.version", fmt.Sprintf("v%d.%d", v.Major, v.Minor)); err != nil {
-				return fmt.Errorf("error setting catalog image tag: %w", err)
-			}
-		}
-	}
+	if err := applyCatalogImageTagOverride(values); err != nil {
+		return err
+	}

Add the helper (e.g. near the other package functions):

// applyCatalogImageTagOverride substitutes the 4.x catalog tag when catalogd.yaml
// pins "v5.0" but RELEASE_VERSION is a 4.x stream (4.23 and 5.0 are co-released).
// For 5.x releases the value is left untouched.
func applyCatalogImageTagOverride(values *helmvalues.HelmValues) error {
	releaseVersion := os.Getenv("RELEASE_VERSION")
	if !strings.HasPrefix(releaseVersion, "4.") {
		return nil
	}
	currentCatalogVersion, found := values.GetStringValue("options.openshift.catalogs.version")
	if !found || currentCatalogVersion != "v5.0" {
		return nil
	}
	v, err := versionutils.GetCurrentOCPMinorVersion(releaseVersion)
	if err != nil {
		return fmt.Errorf("error parsing release version for catalog tag: %w", err)
	}
	if err := values.SetStringValue("options.openshift.catalogs.version", fmt.Sprintf("v%d.%d", v.Major, v.Minor)); err != nil {
		return fmt.Errorf("error setting catalog image tag: %w", err)
	}
	return nil
}
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@pkg/controller/helm.go` around lines 84 - 99, The nested-if catalog override
block should be moved into a new helper function (e.g.
applyCatalogImageTagOverride(values *helmvalues.HelmValues) error) to satisfy
the nestif lint rule; implement the helper to read RELEASE_VERSION, early-return
nil if it doesn't start with "4.", check options.openshift.catalogs.version and
early-return if missing or not "v5.0", call
versionutils.GetCurrentOCPMinorVersion and handle/return errors, and set the
catalog version via values.SetStringValue; then replace the original block in
renderHelmTemplate (or the function containing it) with a single call to
applyCatalogImageTagOverride(values) and propagate any error.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In `@pkg/controller/helm.go`:
- Around line 84-99: The nested-if catalog override block should be moved into a
new helper function (e.g. applyCatalogImageTagOverride(values
*helmvalues.HelmValues) error) to satisfy the nestif lint rule; implement the
helper to read RELEASE_VERSION, early-return nil if it doesn't start with "4.",
check options.openshift.catalogs.version and early-return if missing or not
"v5.0", call versionutils.GetCurrentOCPMinorVersion and handle/return errors,
and set the catalog version via values.SetStringValue; then replace the original
block in renderHelmTemplate (or the function containing it) with a single call
to applyCatalogImageTagOverride(values) and propagate any error.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository: openshift/coderabbit/.coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 3bb85073-1ff1-4006-af4a-65c081aa8b15

📥 Commits

Reviewing files that changed from the base of the PR and between 03c183e and fd19ccc.

📒 Files selected for processing (6)
  • cmd/cluster-olm-operator/main.go
  • internal/versionutils/version_utils.go
  • internal/versionutils/version_utils_test.go
  • pkg/controller/builder.go
  • pkg/controller/helm.go
  • pkg/controller/helm_test.go
💤 Files with no reviewable changes (2)
  • internal/versionutils/version_utils_test.go
  • internal/versionutils/version_utils.go
🚧 Files skipped from review as they are similar to previous changes (3)
  • pkg/controller/builder.go
  • pkg/controller/helm_test.go
  • cmd/cluster-olm-operator/main.go

@tmshort

tmshort commented Jun 1, 2026

Copy link
Copy Markdown
Contributor Author

/retest

…yaml pins v5.0

Partially reverts commit 7a85fa8: removes the ocp-release sentinel
mechanism (GetCatalogImageTag, ClusterCatalogImageTag, applyCatalogImageTagOverride,
and the associated Builder field and main.go changes).

Replaces it with a targeted check in renderHelmTemplate: when
openshift/helm/catalogd.yaml (operator-framework-operator-controller)
pins options.openshift.catalogs.version to "v5.0" and RELEASE_VERSION
is a 4.x stream (the 4.23/5.0 co-release), substitute the 4.x catalog
tag so images match the release stream. For 5.x releases, including 5.1
running against a "v5.0" or "v5.1" catalog, the value in catalogd.yaml
is left untouched.

Assisted-by: Claude code
Signed-off-by: Todd Short <tshort@redhat.com>
@tmshort

tmshort commented Jun 1, 2026

Copy link
Copy Markdown
Contributor Author

/test images

@ankitathomas

Copy link
Copy Markdown
Contributor

/retest

1 similar comment
@tmshort

tmshort commented Jun 2, 2026

Copy link
Copy Markdown
Contributor Author

/retest

@tmshort

tmshort commented Jun 2, 2026

Copy link
Copy Markdown
Contributor Author

/override ci/prow/openshift-e2e-aws-customnoupgrade

This is unable to install, through no fault of OLM

@openshift-ci

openshift-ci Bot commented Jun 2, 2026

Copy link
Copy Markdown
Contributor

@tmshort: Overrode contexts on behalf of tmshort: ci/prow/openshift-e2e-aws-customnoupgrade

Details

In response to this:

/override ci/prow/openshift-e2e-aws-customnoupgrade

This is unable to install, through no fault of OLM

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.

@ankitathomas

Copy link
Copy Markdown
Contributor

/verified by @ankitathomas

  • Verified catalog versions do not change when options.openshift.catalogs.version is not v5.0 regardless of RELEASE_VERSION
  • Verified catalog versions change to match RELEASE_VERSION with major version 4 when options.openshift.catalogs.version is v5.0
  • Verified catalog versions do not change to match RELEASE_VERSION with major version other than 4 when options.openshift.catalogs.version is v5.0

@openshift-ci-robot openshift-ci-robot added the verified Signifies that the PR passed pre-merge verification criteria label Jun 2, 2026
@openshift-ci-robot

Copy link
Copy Markdown

@ankitathomas: This PR has been marked as verified by @ankitathomas.

Details

In response to this:

/verified by @ankitathomas

  • Verified catalog versions do not change when options.openshift.catalogs.version is not v5.0 regardless of RELEASE_VERSION
  • Verified catalog versions change to match RELEASE_VERSION with major version 4 when options.openshift.catalogs.version is v5.0
  • Verified catalog versions do not change to match RELEASE_VERSION with major version other than 4 when options.openshift.catalogs.version is v5.0

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 openshift-eng/jira-lifecycle-plugin repository.

@openshift-ci

openshift-ci Bot commented Jun 2, 2026

Copy link
Copy Markdown
Contributor

@tmshort: all tests passed!

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.

@theobarberbany

Copy link
Copy Markdown

/lgtm

@openshift-ci openshift-ci Bot added the lgtm Indicates that a PR is ready to be merged. label Jun 2, 2026
@openshift-merge-bot openshift-merge-bot Bot merged commit 332dc80 into openshift:main Jun 2, 2026
12 checks passed
@tmshort tmshort deleted the handle-5.1-special-case branch June 2, 2026 17:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. lgtm Indicates that a PR is ready to be merged. verified Signifies that the PR passed pre-merge verification criteria

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants