STOR-3059: Add LocalVolume tolerations e2e test for provisioning and consumption on tainted nodes#642
Conversation
|
@radeore: This pull request references STOR-3059 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 sub-task to target the "5.0.0" version, but no target version was set. DetailsIn 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. |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository: openshift/coderabbit/.coderabbit.yaml Review profile: CHILL Plan: Enterprise Run ID: 📒 Files selected for processing (2)
🚧 Files skipped from review as they are similar to previous changes (2)
WalkthroughThe e2e utilities now support tolerations on consuming Jobs. LocalVolume tests add a tainted-node scenario that provisions a tolerations-configured volume, validates its PV, and consumes it with matching Pod tolerations. ChangesLocalVolume tolerations
Estimated code review effort: 2 (Simple) | ~10 minutes Sequence Diagram(s)sequenceDiagram
participant LocalVolumeTest
participant TaintedWorker
participant DiskMaker
participant ConsumingJob
LocalVolumeTest->>TaintedWorker: Apply localVolumeNodeTaint()
LocalVolumeTest->>DiskMaker: Create LocalVolume with localVolumeTolerations()
DiskMaker->>TaintedWorker: Discover selected disk
DiskMaker-->>LocalVolumeTest: Create and validate PV
LocalVolumeTest->>ConsumingJob: Consume PV with tolerations
LocalVolumeTest->>TaintedWorker: Restore original taints
Suggested reviewers: 🚥 Pre-merge checks | ✅ 12 | ❌ 3❌ Failed checks (3 warnings)
✅ Passed checks (12 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
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. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 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/e2e/localvolume_test.go`:
- Around line 307-313: Update the DeferCleanup closure around
waitForNodeTaintUpdate to return restoreErr directly, while preserving the
existing taint restoration logic and cleanup registration. Remove the error-only
logging if it is no longer needed, ensuring Ginkgo receives any cleanup failure.
🪄 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: openshift/coderabbit/.coderabbit.yaml
Review profile: CHILL
Plan: Enterprise
Run ID: d058a6bd-3697-42d4-84de-fdc034a12495
📒 Files selected for processing (2)
test/e2e/gomega_util.gotest/e2e/localvolume_test.go
… on tainted nodes
|
/jira refresh |
|
@radeore: This pull request references STOR-3059 which is a valid jira issue. DetailsIn 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. |
|
@radeore: all tests passed! Full PR test history. Your PR dashboard. DetailsInstructions 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. |
|
/lgtm |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: gnufied, radeore The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
/verified by CI |
|
@radeore: This PR has been marked as verified by DetailsIn 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. |
Summary
localVolumeTolerations()andlocalVolumeNodeTaint()helpers for reuse with existing LocalVolume testsconsumePVWithTolerations()so consumer pods can schedule on tainted nodes without changing existingconsumePV()callersBackground
This covers the openshift-tests-private scenario where a LocalVolume CR with tolerations must provision storage and allow a workload to consume the PV on a tainted node
What the test verifies
localstorage=testvalue:NoScheduleTest plan
hack/test-e2e.sh --suite LocalVolume --ginkgo.focus "schedules and consumes PV on tainted node"hack/test-e2e.sh --suite LocalVolumeSummary by CodeRabbit