2
0
mirror of https://github.com/openvswitch/ovs synced 2025-08-22 18:07:40 +00:00

ci: Allow make check-dpdk to run the MFEX tests.

Currently, if you use the python/test_requirements.txt file to
set up your test environment the MFEX tests will be skipped due
to the Scapy package not being included. This is fixed as part
of this patch.

The test case change will make sure the 'MFEX Configuration' test
will run without the need for Scapy and its auto-generated tests.

In addition, we exclude the traffic-related MFEX tests from running
on GitHub actions due to limited resources.

Signed-off-by: Eelco Chaudron <echaudro@redhat.com>
Acked-by: Simon Horman <horms@ovn.org>
This commit is contained in:
Eelco Chaudron 2023-12-19 13:44:29 +01:00
parent 26ffd192f2
commit 67c53a89df
4 changed files with 6 additions and 5 deletions

View File

@ -38,7 +38,7 @@ function build_dpdk()
# any DPDK driver. # any DPDK driver.
# check-dpdk unit tests requires testpmd and some net/ driver. # check-dpdk unit tests requires testpmd and some net/ driver.
DPDK_OPTS="$DPDK_OPTS -Denable_apps=test-pmd" DPDK_OPTS="$DPDK_OPTS -Denable_apps=test-pmd"
enable_drivers="net/null,net/af_xdp,net/tap,net/virtio" enable_drivers="net/null,net/af_xdp,net/tap,net/virtio,net/pcap"
DPDK_OPTS="$DPDK_OPTS -Denable_drivers=$enable_drivers" DPDK_OPTS="$DPDK_OPTS -Denable_drivers=$enable_drivers"
# Install DPDK using prefix. # Install DPDK using prefix.

View File

@ -5,7 +5,7 @@ on: [push, pull_request]
jobs: jobs:
build-dpdk: build-dpdk:
env: env:
dependencies: gcc libbpf-dev libnuma-dev ninja-build pkgconf dependencies: gcc libbpf-dev libnuma-dev libpcap-dev ninja-build pkgconf
CC: gcc CC: gcc
DPDK_GIT: https://dpdk.org/git/dpdk-stable DPDK_GIT: https://dpdk.org/git/dpdk-stable
DPDK_VER: 22.11.1 DPDK_VER: 22.11.1

View File

@ -2,4 +2,5 @@ netaddr
pyftpdlib pyftpdlib
pyparsing pyparsing
pytest pytest
scapy
tftpy tftpy

View File

@ -819,6 +819,7 @@ dnl --------------------------------------------------------------------------
dnl MFEX Autovalidator dnl MFEX Autovalidator
AT_SETUP([OVS-DPDK - MFEX Autovalidator]) AT_SETUP([OVS-DPDK - MFEX Autovalidator])
AT_KEYWORDS([dpdk]) AT_KEYWORDS([dpdk])
OVS_CHECK_GITHUB_ACTION()
OVS_DPDK_PRE_CHECK() OVS_DPDK_PRE_CHECK()
OVS_DPDK_START([--no-pci]) OVS_DPDK_START([--no-pci])
AT_CHECK([ovs-vsctl add-br br0 -- set bridge br0 datapath_type=netdev]) AT_CHECK([ovs-vsctl add-br br0 -- set bridge br0 datapath_type=netdev])
@ -852,6 +853,7 @@ dnl --------------------------------------------------------------------------
dnl MFEX Autovalidator Fuzzy dnl MFEX Autovalidator Fuzzy
AT_SETUP([OVS-DPDK - MFEX Autovalidator Fuzzy]) AT_SETUP([OVS-DPDK - MFEX Autovalidator Fuzzy])
AT_KEYWORDS([dpdk]) AT_KEYWORDS([dpdk])
OVS_CHECK_GITHUB_ACTION()
OVS_DPDK_PRE_CHECK() OVS_DPDK_PRE_CHECK()
OVS_DPDK_START([--no-pci]) OVS_DPDK_START([--no-pci])
AT_CHECK([ovs-vsctl add-br br0 -- set bridge br0 datapath_type=netdev]) AT_CHECK([ovs-vsctl add-br br0 -- set bridge br0 datapath_type=netdev])
@ -886,13 +888,11 @@ dnl --------------------------------------------------------------------------
AT_SETUP([OVS-DPDK - MFEX Configuration]) AT_SETUP([OVS-DPDK - MFEX Configuration])
AT_KEYWORDS([dpdk]) AT_KEYWORDS([dpdk])
OVS_DPDK_PRE_CHECK() OVS_DPDK_PRE_CHECK()
AT_SKIP_IF([! $PYTHON3 -c "import scapy"], [], [])
AT_CHECK([$PYTHON3 $srcdir/mfex_fuzzy.py test_traffic.pcap 1], [], [stdout])
OVS_DPDK_START([--no-pci]) OVS_DPDK_START([--no-pci])
AT_CHECK([ovs-vsctl --no-wait set Open_vSwitch . other_config:pmd-cpu-mask=0x1]) AT_CHECK([ovs-vsctl --no-wait set Open_vSwitch . other_config:pmd-cpu-mask=0x1])
dnl Add userspace bridge and attach it to OVS dnl Add userspace bridge and attach it to OVS
AT_CHECK([ovs-vsctl add-br br0 -- set bridge br0 datapath_type=netdev]) AT_CHECK([ovs-vsctl add-br br0 -- set bridge br0 datapath_type=netdev])
AT_CHECK([ovs-vsctl add-port br0 p1 -- set Interface p1 type=dpdk options:dpdk-devargs=net_pcap1,rx_pcap=test_traffic.pcap,infinite_rx=1], [], [stdout], [stderr]) AT_CHECK([ovs-vsctl add-port br0 p1 -- set Interface p1 type=dpdk options:dpdk-devargs=net_null0,no-rx=1], [], [stdout], [stderr])
AT_CHECK([ovs-vsctl show], [], [stdout]) AT_CHECK([ovs-vsctl show], [], [stdout])
AT_CHECK([ovs-appctl dpif-netdev/miniflow-parser-set scalar 1], [2], AT_CHECK([ovs-appctl dpif-netdev/miniflow-parser-set scalar 1], [2],