draft: try running live tests - v1 - #15762
Conversation
|
Information: QA skipped due to no C or rust code changed detected. Set to force a run. Pipeline = code |
1 similar comment
|
Information: QA skipped due to no C or rust code changed detected. Set to force a run. Pipeline = code |
|
Information: QA skipped due to no C or rust code changed detected. Set to force a run. Pipeline = code |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #15762 +/- ##
==========================================
+ Coverage 83.03% 83.07% +0.04%
==========================================
Files 1003 1003
Lines 276582 276582
==========================================
+ Hits 229647 229758 +111
+ Misses 46935 46824 -111
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
|
Information: QA skipped due to tag. Set to force a run. Pipeline = skip |
|
AI-generated review posted automatically by Suricata ai-review. Verdict: request changes
Redmine and suricata-verify assessment: Tickets 8440, 8442, 8699, and transitive dependency ticket 7674 were fetched successfully. PR #3212 does not adequately cover 8440 or 8699: both weakened ports pass against the still-unfixed Validation: reviewed the complete one-commit diff from Both investigator and adjudicator used Codex CLI with model gpt-5.6-sol at xhigh reasoning effort, and Codex was the final adjudicator. |
|
AI-generated review posted automatically by Suricata ai-review. Verdict: request changes
Redmine assessment: 8440 requires final capture-bypass packet/byte statistics during shutdown, and 8699 requires successful VLAN-aware XDP bypass; neither linked regression test distinguishes the fix from current unfixed Linked suricata-verify assessment: PR 3212 at Validation and limitations: reviewed the complete diff from merge base Both investigator and adjudicator used Codex CLI with model gpt-5.6-sol at xhigh reasoning effort, and Codex was the final adjudicator. |
Live-test coverage now provided by suricata-verifyThe paired suricata-verify PR, OISF/suricata-verify#3212, now contains 27 live tests. Of those, 15 are SV replacements for existing Existing
|
| Existing GitHub step | SV test |
|---|---|
afp-ips-netns-bridge.sh 2 workers ips-netns.yaml |
ips-drop-icmp-afp |
afp-ips-netns-bridge.sh 2 autofp ips-netns.yaml |
ips-drop-icmp-afp-autofp |
afp-ips-netns-bond-bridge.sh 2 workers ips-netns-bond.yaml |
afp-ips-bond |
afp-ips-netns-bond-bridge2.sh 2 workers ips-netns-bond2.yaml |
afp-ips-bond-two-networks |
nfq-ips-netns-route.sh autofp ips-netns.yaml |
ips-drop-icmp-nfq |
nfq-ips-netns-route.sh workers ips-netns.yaml |
ips-drop-icmp-nfq-workers |
nfq-fw-netns-route.sh autofp fw-netns.yaml |
nfq-fw |
afp-fw-netns-bridge.sh 2 workers fw-netns.yaml |
afp-fw |
These cover AF_PACKET and NFQUEUE IPS, workers/autofp runmodes, single- and two-network bonded AF_PACKET topologies, firewall rule reloads, alert/verdict accounting, allowed HTTP traffic, blocked ICMP traffic, and server-side packet verification. The SV versions use the deterministic 10.200.x.x namespace topology.
Existing ubuntu-24-04-cov-afpdpdk and ubuntu-24-04-asan-afpdpdk steps
| Existing GitHub step | SV test |
|---|---|
afp-ids.sh 2 autofp |
afp-ids-tpacket2-autofp |
afp-ids.sh 2 workers |
afp-ids-tpacket2-workers |
afp-ids.sh 3 autofp |
afp-ids-tpacket3-autofp |
afp-ids.sh 3 workers |
afp-ids-tpacket3-workers |
pcap.sh autofp |
pcap-ids-autofp |
pcap.sh single |
pcap-ids-single |
multi-tenant.sh autofp |
pcap-multi-tenant-autofp |
These preserve the legacy tpacket argument behavior and cover AF_PACKET/libpcap packet capture, runmodes, IPv4/IPv6 datasets, malformed dataset input, rule reload, interface and capture-mode socket commands, hostbits, and tenant registration/reload/removal. Both jobs now run these seven tests through the legacy-afpdpdk tag alongside the existing shell steps. The coverage job gives these runs collision-safe LLVM profile names and includes them in its existing profile merge.
Additional SV live coverage
The remaining 12 tests add coverage beyond direct replacements for current qa/live job steps:
simple-http-ids,simple-http-afp, andsimple-http-nfq: end-to-end HTTP IDS/IPS traffic and alerting.ips-local-bypass-afpandips-local-bypass-nfq: local bypass behavior while preserving end-to-end traffic.afp-ips-xdp-bypass: AF_PACKET IPS XDP capture bypass.nfq-ips-bypass: NFQUEUE IPS bypass behavior.demo-afp-xdp-bypass-stats-shutdown: XDP bypass statistics during the shutdown scenario from Redmine Pr 8341 and payload len fix/v5 #8440.demo-replay-xdp-bypass-vlan: VLAN-aware XDP bypass with the replay scenario from Redmine Suricata library v2 #8699.firewall-icmp: firewall rule-type behavior and reload.ruletype-firewall-96-lt-response-body-no-match-afpandruletype-firewall-96-lt-response-body-no-match-nfq: HTTP response-body firewall regression coverage in both inline backends.
The new seven-test legacy-afpdpdk group passes locally with PASS: 7, FAIL: 0, and SKIP: 0.
DPDK null-PMD startup, mempool/cache/descriptor, and synthetic bonding configuration checks remain in their existing DPDK-specific shell tests; they are not claimed as namespace live-test ports.
|
AI-generated review posted automatically by Suricata ai-review. Verdict: request changes
Redmine assessment: #8440 requires final capture-bypass packet/byte statistics during shutdown, and #8699 requires VLAN-aware XDP bypass to activate; neither current test distinguishes the fix. #8442 was only a transitive concurrency-test suggestion, while #7674 was provenance for prerequisite commits, so they add no requirements to this PR. All four tickets were fetched successfully with private content. Linked suricata-verify assessment: PR #3212 at Validation and limitations: reviewed the complete two-commit diff from Both investigator and adjudicator used Codex CLI with model gpt-5.6-sol at xhigh reasoning effort, and Codex was the final adjudicator. |
|
AI-generated review posted automatically by Suricata ai-review. Verdict: request changes
Redmine assessment: #8440 requires final capture-bypass packet/byte statistics during shutdown; #8699 requires VLAN-aware XDP bypass to activate. Neither regression test distinguishes its fix. #8442 is only a separate concurrency-test suggestion, and #7674 is prerequisite/provenance for the replay framework; neither adds claimed requirements here. All four tickets were fetched successfully. Linked suricata-verify assessment: PR #3212 at Validation and limitations: reviewed the complete three-commit diff from Both investigator and adjudicator used Codex CLI with model gpt-5.6-sol at xhigh reasoning effort, and Codex was the final adjudicator. |
|
AI-generated review posted automatically by Suricata ai-review. Verdict: request changes
Redmine assessment: #8440 requires final bypass packet/byte statistics during shutdown; #8699 requires VLAN-aware XDP bypass to activate. Neither current regression test distinguishes its fix. #8442 is a separate concurrency issue mentioned as future work, while #7674 supplies replay-framework prerequisites rather than claimed scope. All four tickets were fetched successfully with private content. Linked suricata-verify assessment: PR #3212 at Validation and limitations: reviewed the complete four-commit diff from Both investigator and adjudicator used Codex CLI with model gpt-5.6-sol at xhigh reasoning effort, and Codex was the final adjudicator. |
Adds podman where needed.
|
AI-generated review posted automatically by Suricata ai-review. Verdict: request changes
Redmine assessment: #8440 requires final capture-bypass packet/byte statistics when shutdown precedes the bypass timeout; #8699 requires VLAN-aware XDP bypass to activate. Neither linked regression distinguishes its fix. #8442 is separate concurrency work mentioned in discussion, while #7674 is provenance for replay-framework prerequisites; neither adds claimed requirements here. All four tickets were fetched successfully with private content. Linked suricata-verify assessment: PR #3212 at Validation and limitations: reviewed the complete diff from merge base New dependencies are CI-only: Podman is Apache-2.0; ethtool, iproute2, and iptables use GPL-2.0-family licensing; GNU inetutils is GPL-3.0-or-later; procps-ng contains GPL-2.0-or-later/LGPL-2.1-or-later components. No production linkage dependency was added. Both investigator and adjudicator used Codex CLI with model gpt-5.6-sol at xhigh reasoning effort, and Codex was the final adjudicator. |
|
Replaced by #16076 |
SV_BRANCH=OISF/suricata-verify#3212