NE-2692: Replace iptables with nftables in TestConnectTimeout e2e test#1443
NE-2692: Replace iptables with nftables in TestConnectTimeout e2e test#1443Thealisyed wants to merge 1 commit into
Conversation
|
@Thealisyed: This pull request references NE-2692 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. 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 YAML (base), Central YAML (inherited) Review profile: CHILL Plan: Enterprise Run ID: 📒 Files selected for processing (3)
✅ Files skipped from review due to trivial changes (1)
🚧 Files skipped from review as they are similar to previous changes (2)
📝 WalkthroughWalkthroughPacket-filtering in tests was migrated from iptables to nftables. 🚥 Pre-merge checks | ✅ 12✅ Passed checks (12 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: 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 |
RHEL 10 removes the iptables binary entirely. The TestConnectTimeout test used iptables to set up an NFQUEUE rule for delaying SYN packets. Replace the iptables command with native nft equivalents. The underlying NFQUEUE mechanism is unchanged since it is a netfilter kernel feature that works with both iptables and nftables. Assisted with Claude
e43e50b to
af19595
Compare
|
@Thealisyed: 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. |
|
/assign |
Summary
RHEL 10 removes the
iptablesbinary entirely, and theiptables-nftcompatibility shim is deprecated in RHEL 9. TheTestConnectTimeoute2e test usesiptablesto set up an NFQUEUE rule for delaying SYN packets to simulate a slow backend. This PR replaces theiptablescommand with nativenftequivalents.A spike audit of all NID codebases (NE-2691) confirmed this is the only iptables dependency across all NID-owned components. No production code is affected.
Changes
iptables -I INPUT ... -j NFQUEUEwith equivalentnft add rulecommands in the init containergetIptablesImage()→getNftImage()andinit-iptables→init-nftablesserve-delay-connect.goto shownftsyntaxThe underlying NFQUEUE mechanism is unchanged — it's a netfilter kernel feature that works identically with both iptables and nftables.
Jira
Test plan
TestConnectTimeoutand it passes withnftcommandsiptablesreferences remain in non-vendor test code