Skip to content

OCPNODE-4536: Migrate OCP-55486 check no MountVolume.SetUp failed error in cronjob events#31189

Open
BhargaviGudi wants to merge 1 commit into
openshift:mainfrom
BhargaviGudi:migrate-55486
Open

OCPNODE-4536: Migrate OCP-55486 check no MountVolume.SetUp failed error in cronjob events#31189
BhargaviGudi wants to merge 1 commit into
openshift:mainfrom
BhargaviGudi:migrate-55486

Conversation

@BhargaviGudi
Copy link
Copy Markdown
Contributor

@BhargaviGudi BhargaviGudi commented May 18, 2026

Description

Migrates test case OCP-55486 from openshift-tests-private to origin repository.

Test Overview

This test validates that cronjob events do not contain volume mount errors related to unregistered objects. It checks for the error pattern:
MountVolume.SetUp failed for volume ... object ... not registered

Test Steps

  1. Get all cronjob namespaces in the cluster
  2. Retrieve events from each cronjob namespace
  3. Check for the error pattern using regex
  4. Fail if any cronjob events contain the mount error

Changes

  • Add test to test/extended/node/node_e2e/node.go
  • Add regexp import for pattern matching
  • Document test in test/extended/node/README.md

Related

  • Relates: OCP-55486
  • Migrated from: openshift-tests-private

Testing

./openshift-tests run-test "[sig-node] [Jira:Node/Kubelet] Kubelet, CRI-O, CPU manager [OTP] check no MountVolume.SetUp failed error in cronjob events [OCP-55486]"
  Will run 1 of 1 specs
  ------------------------------
  [sig-node] [Jira:Node/Kubelet] Kubelet, CRI-O, CPU manager [OTP] check no MountVolume.SetUp failed error in cronjob events [OCP-55486]
  github.com/openshift/origin/test/extended/node/node_e2e/node.go:172
    STEP: Creating a kubernetes client @ 05/18/26 15:40:21.077
  I0518 15:40:21.078257 2411148 discovery.go:214] Invalidating discovery information
  I0518 15:40:21.079068 2411148 framework.go:2330] [precondition-check] checking if cluster is MicroShift
  I0518 15:40:21.319145 2411148 framework.go:2353] IsMicroShiftCluster: microshift-version configmap not found, not MicroShift
    STEP: Check events in all cronjob namespaces for volume mount errors @ 05/18/26 15:40:21.319
  I0518 15:40:23.637440 2411148 node.go:180] Cronjob namespaces: openshift-image-registry
  I0518 15:40:27.332787 2411148 node.go:180] Cronjob namespaces: openshift-image-registry
  I0518 15:40:32.313024 2411148 node.go:180] Cronjob namespaces: openshift-image-registry
  I0518 15:40:35.794789 2411148 node.go:180] Cronjob namespaces: openshift-image-registry
  • [16.646 seconds]
  ------------------------------

  Ran 1 of 1 Specs in 16.647 seconds
  SUCCESS! -- 1 Passed | 0 Failed | 0 Pending | 0 Skipped

Summary by CodeRabbit

  • Tests

    • Added an end-to-end test that polls cronjob-related events across namespaces and fails if a MountVolume.SetUp failed error pattern is observed.
  • Documentation

    • Added a Default Suite entry documenting the new cronjob event check in the test suite README.

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

Pipeline controller notification
This repo is configured to use the pipeline controller. Second-stage tests will be triggered either automatically or after lgtm label is added, depending on the repository configuration. The pipeline controller will automatically detect which contexts are required and will utilize /test Prow commands to trigger the second stage.

For optional jobs, comment /test ? to see a list of all defined jobs. To trigger manually all jobs from second stage use /pipeline required command.

This repository is configured in: automatic mode

@openshift-ci-robot
Copy link
Copy Markdown

@BhargaviGudi: No Jira issue with key OCP-55486 exists in the tracker at https://redhat.atlassian.net.
Once a valid jira issue is referenced in the title of this pull request, request a refresh with /jira refresh.

Details

In response to this:

Description

Migrates test case OCP-55486 from openshift-tests-private to origin repository.

Test Overview

This test validates that cronjob events do not contain volume mount errors related to unregistered objects. It checks for the error pattern:
MountVolume.SetUp failed for volume ... object ... not registered

Test Steps

  1. Get all cronjob namespaces in the cluster
  2. Retrieve events from each cronjob namespace
  3. Check for the error pattern using regex
  4. Fail if any cronjob events contain the mount error

Changes

  • Add test to test/extended/node/node_e2e/node.go
  • Add regexp import for pattern matching
  • Document test in test/extended/node/README.md

Related

  • Relates: OCP-55486
  • Migrated from: openshift-tests-private

Testing

./openshift-tests run-test "[sig-node] [Jira:Node/Kubelet] Kubelet, CRI-O, CPU manager [OTP] check no MountVolume.SetUp failed error in cronjob events [OCP-55486]"

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
Copy link
Copy Markdown

coderabbitai Bot commented May 18, 2026

Walkthrough

Adds a Ginkgo E2E that polls CronJob namespaces' events for the regex-matched MountVolume.SetUp failed ... object ... not registered message and documents the test in the node README (OCP-55486).

Changes

CronJob Volume Mount Error E2E Test

Layer / File(s) Summary
E2E test implementation and regex import
test/extended/node/node_e2e/node.go
Adds a Ginkgo [OTP] test that polls events in CronJob namespaces, compiles a regexp matching MountVolume.SetUp failed ... object ... not registered, fails immediately on any match, otherwise expects the poll to time out with no matches.
Test documentation
test/extended/node/README.md
Adds a README entry documenting the new CronJob volume mount error verification test (OCP-55486).

🎯 2 (Simple) | ⏱️ ~8 minutes

Suggested labels: verified

🚥 Pre-merge checks | ✅ 11 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Test Structure And Quality ⚠️ Warning Test lacks assertion error messages (lines 202-203), violating quality requirement #4. All other assertions in the file include descriptive failure messages; these two assertions do not. Add error messages to assertions: change to o.Expect(err).To(o.HaveOccurred(), "wait.Poll should timeout with no errors found") and o.Expect(err.Error()).To(o.ContainSubstring("timed out"), "error should indicate timeout")
✅ Passed checks (11 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly identifies the main change: migrating test case OCP-55486 into the origin repository to verify no MountVolume.SetUp errors in cronjob events.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
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 Test title contains only static deterministic strings with no dynamic values, generated identifiers, timestamps, or environment-specific information that would change between runs.
Microshift Test Compatibility ✅ Passed New Ginkgo test is protected from MicroShift by parent Describe block's BeforeEach (lines 33-39) containing exutil.IsMicroShiftCluster() check with g.Skip().
Single Node Openshift (Sno) Test Compatibility ✅ Passed New test queries Kubernetes events to check for absent error patterns—no multi-node scheduling, failover, or topology assumptions. Test will work on SNO.
Topology-Aware Scheduling Compatibility ✅ Passed PR adds only test code (Ginkgo test verifying cronjob events). Check applies to deployment/operator code, not tests. No scheduling constraints introduced.
Ote Binary Stdout Contract ✅ Passed New test code in g.It() block uses framework-intercepted logging (e2e.Logf, g.By) and internal fmt.Errorf; no process-level stdout writes or klog usage found.
Ipv6 And Disconnected Network Test Compatibility ✅ Passed The test uses only cluster-internal API calls via oc client to query cronjobs and events; no IPv4 addresses, IPv4-specific parsing, or external connectivity requirements detected.

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

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

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented May 18, 2026

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: BhargaviGudi
Once this PR has been reviewed and has the lgtm label, please assign mrunalp for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found 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 requested review from mrunalp and ngopalak-redhat May 18, 2026 07:43
@BhargaviGudi BhargaviGudi changed the title Migrate OCP-55486: check no MountVolume.SetUp failed error in cronjob events WIP Migrate OCP-55486: check no MountVolume.SetUp failed error in cronjob events May 18, 2026
@openshift-ci openshift-ci Bot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label May 18, 2026
@openshift-ci-robot
Copy link
Copy Markdown

@BhargaviGudi: No Jira issue with key OCP-55486 exists in the tracker at https://redhat.atlassian.net.
Once a valid jira issue is referenced in the title of this pull request, request a refresh with /jira refresh.

Details

In response to this:

Description

Migrates test case OCP-55486 from openshift-tests-private to origin repository.

Test Overview

This test validates that cronjob events do not contain volume mount errors related to unregistered objects. It checks for the error pattern:
MountVolume.SetUp failed for volume ... object ... not registered

Test Steps

  1. Get all cronjob namespaces in the cluster
  2. Retrieve events from each cronjob namespace
  3. Check for the error pattern using regex
  4. Fail if any cronjob events contain the mount error

Changes

  • Add test to test/extended/node/node_e2e/node.go
  • Add regexp import for pattern matching
  • Document test in test/extended/node/README.md

Related

  • Relates: OCP-55486
  • Migrated from: openshift-tests-private

Testing

./openshift-tests run-test "[sig-node] [Jira:Node/Kubelet] Kubelet, CRI-O, CPU manager [OTP] check no MountVolume.SetUp failed error in cronjob events [OCP-55486]"

Summary by CodeRabbit

  • Tests

  • Added a new end-to-end test that verifies cronjob events do not contain volume mount configuration failures. The test polls event streams across all namespaces to confirm the specific error pattern does not appear.

  • Documentation

  • Documented the new cronjob volume mount error verification test and its purpose in the test suite.

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-robot
Copy link
Copy Markdown

@BhargaviGudi: No Jira issue with key OCP-55486 exists in the tracker at https://redhat.atlassian.net.
Once a valid jira issue is referenced in the title of this pull request, request a refresh with /jira refresh.

Details

In response to this:

Description

Migrates test case OCP-55486 from openshift-tests-private to origin repository.

Test Overview

This test validates that cronjob events do not contain volume mount errors related to unregistered objects. It checks for the error pattern:
MountVolume.SetUp failed for volume ... object ... not registered

Test Steps

  1. Get all cronjob namespaces in the cluster
  2. Retrieve events from each cronjob namespace
  3. Check for the error pattern using regex
  4. Fail if any cronjob events contain the mount error

Changes

  • Add test to test/extended/node/node_e2e/node.go
  • Add regexp import for pattern matching
  • Document test in test/extended/node/README.md

Related

  • Relates: OCP-55486
  • Migrated from: openshift-tests-private

Testing

./openshift-tests run-test "[sig-node] [Jira:Node/Kubelet] Kubelet, CRI-O, CPU manager [OTP] check no MountVolume.SetUp failed error in cronjob events [OCP-55486]"

Summary by CodeRabbit

  • Tests

  • Added a new end-to-end test that verifies cronjob events do not contain volume mount configuration failures. The test polls event streams across all namespaces to confirm the specific error pattern does not appear.

  • Documentation

  • Documented the new cronjob volume mount error verification test and its purpose in the test suite.

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.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🤖 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.

Inline comments:
In `@test/extended/node/node_e2e/node.go`:
- Around line 180-186: The test is parsing human-readable `oc get events` table
output (variable events) which can truncate/wrap messages and break the regex;
replace that with a structured query for the event .message field and run the
regex against the returned message(s). Update the call using
oc.AsAdmin().WithoutNamespace().Run("get").Args("events", "-n", ns, "-o",
"jsonpath={range .items[*]}{.message}{\"\\n\"}{end}") (or equivalent jsonpath)
to capture raw .message text, then apply the existing regexp (errorPattern) and
check matches as before; change references to the `events` variable and keep the
same errorPattern and match logic (len(matches) > 0) so behavior is preserved.
- Around line 174-195: The poll callback currently returns true on the first
clean read which ends polling early; change the logic so the callback returns
false,nil when no matches are found (to continue polling until timeout) and
return a non-nil error (e.g. fmt.Errorf("Found MountVolume.SetUp failed for
volume in namespace %s: %v", ns, matches[0])) when matches are found to fail
fast; update the post-poll assertion around the wait.Poll call so that
wait.ErrWaitTimeout is treated as the successful outcome (i.e. assert err ==
wait.ErrWaitTimeout or treat nil as failure and ErrWaitTimeout as pass) —
reference symbols: wait.Poll, errorPattern, matches, the anonymous poll
function, and the o.Expect(...) after wait.Poll.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: d11c7e9c-8c0e-4212-82f1-a8761b36e0ff

📥 Commits

Reviewing files that changed from the base of the PR and between 38c4fba and cf7004b.

📒 Files selected for processing (2)
  • test/extended/node/README.md
  • test/extended/node/node_e2e/node.go

Comment thread test/extended/node/node_e2e/node.go Outdated
Comment thread test/extended/node/node_e2e/node.go Outdated
@BhargaviGudi BhargaviGudi changed the title WIP Migrate OCP-55486: check no MountVolume.SetUp failed error in cronjob events WIP OCPNODE-4536: Migrate OCP-55486 check no MountVolume.SetUp failed error in cronjob events May 18, 2026
@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 18, 2026
@openshift-ci-robot
Copy link
Copy Markdown

openshift-ci-robot commented May 18, 2026

@BhargaviGudi: This pull request references OCPNODE-4536 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "5.0.0" version, but no target version was set.

Details

In response to this:

Description

Migrates test case OCP-55486 from openshift-tests-private to origin repository.

Test Overview

This test validates that cronjob events do not contain volume mount errors related to unregistered objects. It checks for the error pattern:
MountVolume.SetUp failed for volume ... object ... not registered

Test Steps

  1. Get all cronjob namespaces in the cluster
  2. Retrieve events from each cronjob namespace
  3. Check for the error pattern using regex
  4. Fail if any cronjob events contain the mount error

Changes

  • Add test to test/extended/node/node_e2e/node.go
  • Add regexp import for pattern matching
  • Document test in test/extended/node/README.md

Related

  • Relates: OCP-55486
  • Migrated from: openshift-tests-private

Testing

./openshift-tests run-test "[sig-node] [Jira:Node/Kubelet] Kubelet, CRI-O, CPU manager [OTP] check no MountVolume.SetUp failed error in cronjob events [OCP-55486]"

Summary by CodeRabbit

  • Tests

  • Added a new end-to-end test that verifies cronjob events do not contain volume mount configuration failures. The test polls event streams across all namespaces to confirm the specific error pattern does not appear.

  • Documentation

  • Documented the new cronjob volume mount error verification test and its purpose in the test suite.

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-merge-bot
Copy link
Copy Markdown
Contributor

Scheduling required tests:
/test e2e-aws-csi
/test e2e-aws-ovn-fips
/test e2e-aws-ovn-microshift
/test e2e-aws-ovn-microshift-serial
/test e2e-aws-ovn-serial-1of2
/test e2e-aws-ovn-serial-2of2
/test e2e-gcp-csi
/test e2e-gcp-ovn
/test e2e-gcp-ovn-upgrade
/test e2e-metal-ipi-ovn-ipv6
/test e2e-vsphere-ovn
/test e2e-vsphere-ovn-upi

@openshift-ci openshift-ci Bot added the ready-for-human-review Indicates a PR has been reviewed by automated tools and is ready for human review label May 18, 2026
@openshift-merge-bot
Copy link
Copy Markdown
Contributor

Scheduling required tests:
/test e2e-aws-csi
/test e2e-aws-ovn-fips
/test e2e-aws-ovn-microshift
/test e2e-aws-ovn-microshift-serial
/test e2e-aws-ovn-serial-1of2
/test e2e-aws-ovn-serial-2of2
/test e2e-gcp-csi
/test e2e-gcp-ovn
/test e2e-gcp-ovn-upgrade
/test e2e-metal-ipi-ovn-ipv6
/test e2e-vsphere-ovn
/test e2e-vsphere-ovn-upi

@BhargaviGudi
Copy link
Copy Markdown
Contributor Author

/pipeline required

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

Scheduling required tests:
/test e2e-aws-csi
/test e2e-aws-ovn-fips
/test e2e-aws-ovn-microshift
/test e2e-aws-ovn-microshift-serial
/test e2e-aws-ovn-serial-1of2
/test e2e-aws-ovn-serial-2of2
/test e2e-gcp-csi
/test e2e-gcp-ovn
/test e2e-gcp-ovn-upgrade
/test e2e-metal-ipi-ovn-ipv6
/test e2e-vsphere-ovn
/test e2e-vsphere-ovn-upi

@openshift-trt
Copy link
Copy Markdown

openshift-trt Bot commented May 18, 2026

Risk analysis has seen new tests most likely introduced by this PR.
Please ensure that new tests meet guidelines for naming and stability.

New Test Risks for sha: 7e902fe

Job Name New Test Risk
pull-ci-openshift-origin-main-e2e-vsphere-ovn-upi High - "[sig-node] [Jira:Node/Kubelet] Kubelet, CRI-O, CPU manager [OTP] check no MountVolume.SetUp failed error in cronjob events [OCP-55486] [Suite:openshift/conformance/parallel]" is a new test that was not present in all runs against the current commit.

New tests seen in this PR at sha: 7e902fe

  • "[sig-node] [Jira:Node/Kubelet] Kubelet, CRI-O, CPU manager [OTP] check no MountVolume.SetUp failed error in cronjob events [OCP-55486] [Suite:openshift/conformance/parallel]" [Total: 9, Pass: 9, Fail: 0, Flake: 0]

@BhargaviGudi
Copy link
Copy Markdown
Contributor Author

/retest-required

@BhargaviGudi
Copy link
Copy Markdown
Contributor Author

/verified by @BhargaviGudi - the test case was executed on the local cluster and passed successfully.

@openshift-ci-robot openshift-ci-robot added the verified Signifies that the PR passed pre-merge verification criteria label May 19, 2026
@openshift-ci-robot
Copy link
Copy Markdown

@BhargaviGudi: This PR has been marked as verified by @BhargaviGudi - the test case was executed on the local cluster and passed successfully..

Details

In response to this:

/verified by @BhargaviGudi - the test case was executed on the local cluster and passed successfully.

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-robot openshift-ci-robot removed the verified Signifies that the PR passed pre-merge verification criteria label May 19, 2026
@openshift-ci-robot
Copy link
Copy Markdown

openshift-ci-robot commented May 19, 2026

@BhargaviGudi: This pull request references OCPNODE-4536 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "5.0.0" version, but no target version was set.

Details

In response to this:

Description

Migrates test case OCP-55486 from openshift-tests-private to origin repository.

Test Overview

This test validates that cronjob events do not contain volume mount errors related to unregistered objects. It checks for the error pattern:
MountVolume.SetUp failed for volume ... object ... not registered

Test Steps

  1. Get all cronjob namespaces in the cluster
  2. Retrieve events from each cronjob namespace
  3. Check for the error pattern using regex
  4. Fail if any cronjob events contain the mount error

Changes

  • Add test to test/extended/node/node_e2e/node.go
  • Add regexp import for pattern matching
  • Document test in test/extended/node/README.md

Related

  • Relates: OCP-55486
  • Migrated from: openshift-tests-private

Testing

./openshift-tests run-test "[sig-node] [Jira:Node/Kubelet] Kubelet, CRI-O, CPU manager [OTP] check no MountVolume.SetUp failed error in cronjob events [OCP-55486]"
 Will run 1 of 1 specs
 ------------------------------
 [sig-node] [Jira:Node/Kubelet] Kubelet, CRI-O, CPU manager [OTP] check no MountVolume.SetUp failed error in cronjob events [OCP-55486]
 github.com/openshift/origin/test/extended/node/node_e2e/node.go:172
   STEP: Creating a kubernetes client @ 05/18/26 15:40:21.077
 I0518 15:40:21.078257 2411148 discovery.go:214] Invalidating discovery information
 I0518 15:40:21.079068 2411148 framework.go:2330] [precondition-check] checking if cluster is MicroShift
 I0518 15:40:21.319145 2411148 framework.go:2353] IsMicroShiftCluster: microshift-version configmap not found, not MicroShift
   STEP: Check events in all cronjob namespaces for volume mount errors @ 05/18/26 15:40:21.319
 I0518 15:40:23.637440 2411148 node.go:180] Cronjob namespaces: openshift-image-registry
 I0518 15:40:27.332787 2411148 node.go:180] Cronjob namespaces: openshift-image-registry
 I0518 15:40:32.313024 2411148 node.go:180] Cronjob namespaces: openshift-image-registry
 I0518 15:40:35.794789 2411148 node.go:180] Cronjob namespaces: openshift-image-registry
 • [16.646 seconds]
 ------------------------------

 Ran 1 of 1 Specs in 16.647 seconds
 SUCCESS! -- 1 Passed | 0 Failed | 0 Pending | 0 Skipped

Summary by CodeRabbit

  • Tests

  • Added an end-to-end test that continuously checks cronjob event messages across namespaces and fails if a MountVolume.SetUp failed error pattern is detected.

  • Documentation

  • Added a Default Suite entry describing the new cronjob event check to the test suite documentation.

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-merge-bot
Copy link
Copy Markdown
Contributor

Scheduling required tests:
/test e2e-aws-csi
/test e2e-aws-ovn-fips
/test e2e-aws-ovn-microshift
/test e2e-aws-ovn-microshift-serial
/test e2e-aws-ovn-serial-1of2
/test e2e-aws-ovn-serial-2of2
/test e2e-gcp-csi
/test e2e-gcp-ovn
/test e2e-gcp-ovn-upgrade
/test e2e-metal-ipi-ovn-ipv6
/test e2e-vsphere-ovn
/test e2e-vsphere-ovn-upi

@BhargaviGudi
Copy link
Copy Markdown
Contributor Author

/verified by @BhargaviGudi - the test case was executed on the local cluster and passed successfully.

@BhargaviGudi BhargaviGudi changed the title WIP OCPNODE-4536: Migrate OCP-55486 check no MountVolume.SetUp failed error in cronjob events OCPNODE-4536: Migrate OCP-55486 check no MountVolume.SetUp failed error in cronjob events May 19, 2026
@openshift-ci-robot openshift-ci-robot added the verified Signifies that the PR passed pre-merge verification criteria label May 19, 2026
@openshift-ci-robot
Copy link
Copy Markdown

@BhargaviGudi: This PR has been marked as verified by @BhargaviGudi - the test case was executed on the local cluster and passed successfully..

Details

In response to this:

/verified by @BhargaviGudi - the test case was executed on the local cluster and passed successfully.

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 removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label May 19, 2026
@BhargaviGudi
Copy link
Copy Markdown
Contributor Author

/retest-required

@BhargaviGudi
Copy link
Copy Markdown
Contributor Author

/cc @bitoku

@openshift-ci openshift-ci Bot requested a review from bitoku May 19, 2026 12:31
Comment thread test/extended/node/node_e2e/node.go Outdated
Comment thread test/extended/node/node_e2e/node.go Outdated
@openshift-trt
Copy link
Copy Markdown

openshift-trt Bot commented May 19, 2026

Risk analysis has seen new tests most likely introduced by this PR.
Please ensure that new tests meet guidelines for naming and stability.

New tests seen in this PR at sha: cc8158d

  • "[sig-node] [Jira:Node/Kubelet] Kubelet, CRI-O, CPU manager [OTP] Cronjob events should not contain MountVolume.SetUp failed errors [OCP-55486] [Suite:openshift/conformance/parallel]" [Total: 6, Pass: 6, Fail: 0, Flake: 0]

Comment thread test/extended/node/node_e2e/node.go Outdated
@BhargaviGudi
Copy link
Copy Markdown
Contributor Author

/test e2e-aws-ovn-microshift-serial

… events

Migrates test from openshift-tests-private to origin.

Test validates that cronjob events do not contain the error:
"MountVolume.SetUp failed for volume ... object ... not registered"

This is a regression test for a bug where volume mounting in cronjobs
could fail with an error about unregistered objects.

The test:
1. Gets all cronjob namespaces in the cluster
2. Retrieves events from each cronjob namespace
3. Checks for the error pattern using regex
4. Fails if any cronjob events contain the mount error

Updates:
- Add test to test/extended/node/node_e2e/node.go
- Add regexp import for pattern matching
- Document test in test/extended/node/README.md
@openshift-ci-robot openshift-ci-robot removed the verified Signifies that the PR passed pre-merge verification criteria label May 21, 2026
@openshift-ci-robot
Copy link
Copy Markdown

openshift-ci-robot commented May 21, 2026

@BhargaviGudi: This pull request references OCPNODE-4536 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "5.0.0" version, but no target version was set.

Details

In response to this:

Description

Migrates test case OCP-55486 from openshift-tests-private to origin repository.

Test Overview

This test validates that cronjob events do not contain volume mount errors related to unregistered objects. It checks for the error pattern:
MountVolume.SetUp failed for volume ... object ... not registered

Test Steps

  1. Get all cronjob namespaces in the cluster
  2. Retrieve events from each cronjob namespace
  3. Check for the error pattern using regex
  4. Fail if any cronjob events contain the mount error

Changes

  • Add test to test/extended/node/node_e2e/node.go
  • Add regexp import for pattern matching
  • Document test in test/extended/node/README.md

Related

  • Relates: OCP-55486
  • Migrated from: openshift-tests-private

Testing

./openshift-tests run-test "[sig-node] [Jira:Node/Kubelet] Kubelet, CRI-O, CPU manager [OTP] check no MountVolume.SetUp failed error in cronjob events [OCP-55486]"
 Will run 1 of 1 specs
 ------------------------------
 [sig-node] [Jira:Node/Kubelet] Kubelet, CRI-O, CPU manager [OTP] check no MountVolume.SetUp failed error in cronjob events [OCP-55486]
 github.com/openshift/origin/test/extended/node/node_e2e/node.go:172
   STEP: Creating a kubernetes client @ 05/18/26 15:40:21.077
 I0518 15:40:21.078257 2411148 discovery.go:214] Invalidating discovery information
 I0518 15:40:21.079068 2411148 framework.go:2330] [precondition-check] checking if cluster is MicroShift
 I0518 15:40:21.319145 2411148 framework.go:2353] IsMicroShiftCluster: microshift-version configmap not found, not MicroShift
   STEP: Check events in all cronjob namespaces for volume mount errors @ 05/18/26 15:40:21.319
 I0518 15:40:23.637440 2411148 node.go:180] Cronjob namespaces: openshift-image-registry
 I0518 15:40:27.332787 2411148 node.go:180] Cronjob namespaces: openshift-image-registry
 I0518 15:40:32.313024 2411148 node.go:180] Cronjob namespaces: openshift-image-registry
 I0518 15:40:35.794789 2411148 node.go:180] Cronjob namespaces: openshift-image-registry
 • [16.646 seconds]
 ------------------------------

 Ran 1 of 1 Specs in 16.647 seconds
 SUCCESS! -- 1 Passed | 0 Failed | 0 Pending | 0 Skipped

Summary by CodeRabbit

  • Tests

  • Added an end-to-end test that polls cronjob-related events across namespaces and fails if a MountVolume.SetUp failed error pattern is observed.

  • Documentation

  • Added a Default Suite entry documenting the new cronjob event check in the test suite README.

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.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

🧹 Nitpick comments (1)
test/extended/node/node_e2e/node.go (1)

202-203: ⚡ Quick win

Use typed error comparison instead of string matching.

Checking for "timed out" in the error message is fragile. wait.Poll returns the sentinel error wait.ErrWaitTimeout on timeout, so compare against that directly for more robust and idiomatic error handling.

♻️ Proposed fix
-		// Expect timeout (no errors found during the full polling window)
-		o.Expect(err).To(o.HaveOccurred())
-		o.Expect(err.Error()).To(o.ContainSubstring("timed out"))
+		// Expect timeout (no errors found during the full polling window)
+		o.Expect(err).To(o.Equal(wait.ErrWaitTimeout))
🤖 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 `@test/extended/node/node_e2e/node.go` around lines 202 - 203, The test
currently asserts the timeout by checking the error string; instead use a typed
comparison against wait.ErrWaitTimeout (or errors.Is(err, wait.ErrWaitTimeout)
to handle wrapped errors). Replace the
o.Expect(err.Error()).To(o.ContainSubstring("timed out")) check with an
assertion that the error equals or matches wait.ErrWaitTimeout (for example use
errors.Is(err, wait.ErrWaitTimeout) and assert true), and add the "errors"
import if it is not present.
🤖 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 `@test/extended/node/node_e2e/node.go`:
- Around line 202-203: The test currently asserts the timeout by checking the
error string; instead use a typed comparison against wait.ErrWaitTimeout (or
errors.Is(err, wait.ErrWaitTimeout) to handle wrapped errors). Replace the
o.Expect(err.Error()).To(o.ContainSubstring("timed out")) check with an
assertion that the error equals or matches wait.ErrWaitTimeout (for example use
errors.Is(err, wait.ErrWaitTimeout) and assert true), and add the "errors"
import if it is not present.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: 91537fef-5f1f-47a8-a47c-1123c004aee2

📥 Commits

Reviewing files that changed from the base of the PR and between cc8158d and 84fa429.

📒 Files selected for processing (2)
  • test/extended/node/README.md
  • test/extended/node/node_e2e/node.go
✅ Files skipped from review due to trivial changes (1)
  • test/extended/node/README.md

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

Scheduling required tests:
/test e2e-aws-csi
/test e2e-aws-ovn-fips
/test e2e-aws-ovn-microshift
/test e2e-aws-ovn-microshift-serial
/test e2e-aws-ovn-serial-1of2
/test e2e-aws-ovn-serial-2of2
/test e2e-gcp-csi
/test e2e-gcp-ovn
/test e2e-gcp-ovn-upgrade
/test e2e-metal-ipi-ovn-ipv6
/test e2e-vsphere-ovn
/test e2e-vsphere-ovn-upi

@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented May 21, 2026

@BhargaviGudi: The following tests 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-aws-ovn-microshift 84fa429 link true /test e2e-aws-ovn-microshift
ci/prow/e2e-aws-ovn-microshift-serial 84fa429 link true /test e2e-aws-ovn-microshift-serial

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.

@openshift-trt
Copy link
Copy Markdown

openshift-trt Bot commented May 21, 2026

Risk analysis has seen new tests most likely introduced by this PR.
Please ensure that new tests meet guidelines for naming and stability.

New tests seen in this PR at sha: 84fa429

  • "[sig-node] [Jira:Node/Kubelet] Kubelet, CRI-O, CPU manager [OTP][Late] Cronjob events should not contain MountVolume.SetUp failed errors [OCP-55486] [Suite:openshift/conformance/parallel]" [Total: 7, Pass: 7, Fail: 0, Flake: 0]

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

Labels

jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. ready-for-human-review Indicates a PR has been reviewed by automated tools and is ready for human review

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants