OCPNODE-3751: Add automated tests for kubelet LimitedSwap drop-in configuration for CNV#30683
OCPNODE-3751: Add automated tests for kubelet LimitedSwap drop-in configuration for CNV#30683BhargaviGudi wants to merge 1 commit intoopenshift:mainfrom
Conversation
|
Pipeline controller notification For optional jobs, comment This repository is configured in: automatic mode |
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: BhargaviGudi The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
c72c3f5 to
2a22445
Compare
d4bcfb6 to
2a118b6
Compare
07e10f5 to
bcf5791
Compare
|
/retest |
bcf5791 to
054011d
Compare
|
Scheduling required tests: |
|
lgtm but I think the developer should give the real LGTM. @ngopalak-redhat |
|
which suites are these running in? |
|
|
/test e2e-metal-ipi-ovn-ipv6 |
|
Job Failure Risk Analysis for sha: 054011d
|
|
/hold |
08f90a1 to
1ce09ec
Compare
|
Scheduling required tests: |
3f4e72d to
f55588a
Compare
|
Scheduling required tests: |
|
/retest-required |
|
Perhaps I am missing it, but I do not see any of these tests being run in the prow jobs. |
|
/retest |
|
The latest changes look good. They address all the point discussed in a separate meeting. The refactoring of util functions is inline with what we discussed and I think the tests are much easier to read now. Hopefully additional tests for this feature will be easier to write now that we have a library of functions. |
|
/retitle OCPNODE-3751: Add automated tests for kubelet LimitedSwap drop-in configuration for CNV |
|
@BhargaviGudi: This pull request references OCPNODE-3751 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 "4.22.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. |
|
/verified by @BhargaviGudi |
|
@BhargaviGudi: 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. |
f55588a to
28a0c08
Compare
|
/unhold |
|
Scheduling required tests: |
Updated testcase codebase Updated testcase codebase Added openshift/nodes/cnv suite to differentiate the CNV-depedent testcases Added suite details Added appropriate labels to the testcases Updated README Removed unused files;Using yaml files Using node-logs to get kubelet logs kept original go.mod chnaged kubelet to 1.34.1 Moved testcase to openshift/disruptive-longrunning suite Revert go.mod and vendor/modules.txt to upstream/main versions
28a0c08 to
c6a51da
Compare
|
/verified by @BhargaviGudi |
|
@BhargaviGudi: 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. |
|
@BhargaviGudi: The following tests failed, say
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. |
|
Closing this PR as I have created new PR due to verify-deps issue. |
This PR adds automated tests for the LimitedSwap feature using the /etc/openshift/kubelet.conf.d/ drop-in directory on CNV-enabled clusters.
Jira: https://issues.redhat.com/browse/OCPNODE-3751
Test Cases:
TC1: Verify silent creation and ownership of drop-in directory on CNV nodes
TC2: Verify kubelet starts normally with empty directory
TC3: Apply LimitedSwap configuration from drop-in file
TC4: Revert to NoSwap when drop-in file is removed
TC5: Verify control plane kubelets ignore drop-in config
TC6: Verify drop-in directory is auto-recreated after deletion
TC7: Validate security and permissions of drop-in directory
TC8: Verify cluster stability with LimitedSwap enabled
TC9: Verify non-CNV workers have no swap configuration
TC10: Apply correct precedence with multiple drop-in files
TC11: Maintain consistent configuration with checksum verification across CNV nodes
TC12: Handle LimitedSwap config gracefully when OS swap is disabled
TC13: Work correctly with various swap sizes
TC14: Expose swap metrics correctly via Prometheus
Changes
test/extended/node/node_swap_cnv.go - New test file with CNV swap tests
test/extended/node/node_utils.go - Helper functions for node operations and CNV lifecycle
test/extended/testdata/node/cnv-swap/ - Test data YAML files and README
pkg/testsuites/standard_suites.go - Added openshift/nodes/cnv suite definition
Running Tests
Run individual test
./openshift-tests run-test "[Jira:Node/Kubelet][sig-node][Feature:NodeSwap][Serial][Disruptive][Suite:openshift/nodes/cnv] Kubelet LimitedSwap Drop-in Configuration for CNV TC1: should verify silent creation and ownership of drop-in directory on CNV nodesRun entire suite
./openshift-tests run openshift/nodes/cnvAll the testcases are passed with 4.22.0-0.nightly-2026-01-19-085729
I ran each test case individually and captured the outputs here.
Ran test suite and kept the output here
CI job:
http://github.com/openshift/release/pull/73670 WIP