Skip to content

Commit 01f4de8

Browse files
committed
github-ci: test live tests
Adds podman where needed.
1 parent 8455efd commit 01f4de8

1 file changed

Lines changed: 37 additions & 6 deletions

File tree

.github/workflows/builds.yml

Lines changed: 37 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1754,7 +1754,7 @@ jobs:
17541754
runs-on: ubuntu-latest
17551755
container:
17561756
image: ubuntu:24.04
1757-
options: --privileged
1757+
options: --privileged --cgroupns=host
17581758
needs: [prepare-deps, prepare-cbindgen]
17591759
steps:
17601760
- name: Cache ~/.cargo
@@ -1811,7 +1811,11 @@ jobs:
18111811
curl \
18121812
time \
18131813
wget \
1814-
dpdk-dev
1814+
dpdk-dev \
1815+
podman \
1816+
ethtool \
1817+
iproute2 \
1818+
iptables
18151819
# specific version to match up to the llvm version in ubuntu below
18161820
- name: Install Rust
18171821
run: curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain 1.85.1 -y
@@ -1821,6 +1825,7 @@ jobs:
18211825
with:
18221826
name: prep
18231827
path: prep
1828+
- run: tar xf prep/suricata-verify.tar.gz
18241829
- uses: ./.github/actions/install-cbindgen
18251830
- name: Fix kernel mmap rnd bits
18261831
# Asan in llvm 14 provided in ubuntu 22.04 is incompatible with
@@ -1886,6 +1891,9 @@ jobs:
18861891
./qa/live/multi-tenant.sh "autofp"
18871892
env:
18881893
LLVM_PROFILE_FILE: "/tmp/mt-autofp.profraw"
1894+
- run: python3 ./suricata-verify/live/run.py run
1895+
env:
1896+
LLVM_PROFILE_FILE: "/tmp/sv-live-afpdpdk-%p-%m.profraw"
18891897
- run: llvm-profdata-19 merge -o default.profdata $(find /tmp/ -name '*.profraw')
18901898
- run: llvm-cov-19 export ./src/suricata -instr-profile=default.profdata -format=lcov --ignore-filename-regex="^/(root|usr|rustc|github)/.*" --skip-branches > coverage.lcov
18911899
- name: Upload coverage.lcov artifact
@@ -1994,7 +2002,7 @@ jobs:
19942002
needs: [prepare-deps, prepare-cbindgen]
19952003
container:
19962004
image: ubuntu:24.04
1997-
options: --privileged
2005+
options: --privileged --cgroupns=host
19982006
steps:
19992007
- name: Cache ~/.cargo
20002008
uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9
@@ -2041,6 +2049,7 @@ jobs:
20412049
libevent-pthreads-2.1-7 \
20422050
make \
20432051
parallel \
2052+
podman \
20442053
python3-yaml \
20452054
software-properties-common \
20462055
sudo \
@@ -2061,6 +2070,7 @@ jobs:
20612070
with:
20622071
name: prep
20632072
path: prep
2073+
- run: tar xf prep/suricata-verify.tar.gz
20642074
# packaged Rust version is too old for coverage, so get from rustup. 1.85.1 matches
20652075
# LLVM 19
20662076
- name: Install Rust
@@ -2130,7 +2140,12 @@ jobs:
21302140
LLVM_PROFILE_FILE: "/tmp/afp-fw-netns-bridge.profraw"
21312141
- run: llvm-profdata-19 merge -o afp-fw-netns-bridge.profdata /tmp/afp-fw-netns-bridge.profraw
21322142

2133-
- run: llvm-profdata-19 merge -o combined.profdata afp-ips.profdata nfq-ips.profdata afp-ips-autofp.profdata nfq-ips-workers.profdata afp-ips-bond1.profdata afp-ips-bond2.profdata afp-fw-netns-bridge.profdata nfq-fw-netns-route.profdata
2143+
- run: python3 ./suricata-verify/live/run.py run
2144+
env:
2145+
LLVM_PROFILE_FILE: "/tmp/sv-live-%p-%m.profraw"
2146+
- run: llvm-profdata-19 merge -o sv-live.profdata /tmp/sv-live-*.profraw
2147+
2148+
- run: llvm-profdata-19 merge -o combined.profdata afp-ips.profdata nfq-ips.profdata afp-ips-autofp.profdata nfq-ips-workers.profdata afp-ips-bond1.profdata afp-ips-bond2.profdata afp-fw-netns-bridge.profdata nfq-fw-netns-route.profdata sv-live.profdata
21342149
- run: llvm-cov-19 export ./src/suricata -instr-profile=combined.profdata -format=lcov --ignore-filename-regex="^(/github/home/.cargo/.*|/usr/.*|/rustc/.*)" --skip-branches > coverage.lcov
21352150
- name: Upload coverage.lcov artifact
21362151
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a
@@ -2150,7 +2165,7 @@ jobs:
21502165
runs-on: ubuntu-latest
21512166
container:
21522167
image: ubuntu:24.04
2153-
options: --privileged
2168+
options: --privileged --cgroupns=host
21542169
needs: [prepare-deps, prepare-cbindgen]
21552170
steps:
21562171
- name: Cache ~/.cargo
@@ -2173,9 +2188,13 @@ jobs:
21732188
cargo \
21742189
cbindgen \
21752190
clang-18 \
2191+
ethtool \
2192+
podman \
21762193
git \
21772194
hwloc \
21782195
libhwloc-dev \
2196+
iproute2 \
2197+
iptables \
21792198
jq \
21802199
inetutils-ping \
21812200
libc++-dev \
@@ -2217,6 +2236,7 @@ jobs:
22172236
with:
22182237
name: prep
22192238
path: prep
2239+
- run: tar xf prep/suricata-verify.tar.gz
22202240
- name: Fix kernel mmap rnd bits
22212241
run: sudo sysctl vm.mmap_rnd_bits=28
22222242
- run: ./autogen.sh
@@ -2252,6 +2272,7 @@ jobs:
22522272
./qa/live/pcap.sh "single"
22532273
- run: |
22542274
./qa/live/multi-tenant.sh "autofp"
2275+
- run: python3 ./suricata-verify/live/run.py run
22552276

22562277
ubuntu-24-04-cov-fuzz:
22572278
name: Ubuntu 24.04 (fuzz corpus coverage)
@@ -2793,7 +2814,9 @@ jobs:
27932814
ubuntu-22-04-dpdk-build:
27942815
name: Ubuntu 22.04 (DPDK Build)
27952816
runs-on: ubuntu-22.04
2796-
container: ubuntu:22.04
2817+
container:
2818+
image: ubuntu:22.04
2819+
options: --privileged --cgroupns=host
27972820
needs: [ prepare-deps, prepare-cbindgen ]
27982821
strategy:
27992822
matrix:
@@ -2819,8 +2842,14 @@ jobs:
28192842
autoconf \
28202843
automake \
28212844
cargo \
2845+
ethtool \
28222846
git \
28232847
hwloc \
2848+
inetutils-ping \
2849+
iproute2 \
2850+
iptables \
2851+
podman \
2852+
procps \
28242853
libhwloc-dev \
28252854
jq \
28262855
libtool \
@@ -2882,6 +2911,7 @@ jobs:
28822911
name: prep
28832912
path: prep
28842913
- uses: ./.github/actions/install-cbindgen
2914+
- run: tar xf prep/suricata-verify.tar.gz
28852915
- run: ./autogen.sh
28862916
- run: CFLAGS="${DEFAULT_CFLAGS}" ./configure --enable-warnings --enable-dpdk --enable-hwloc
28872917
- run: make -j ${{ env.CPUS }}
@@ -2894,6 +2924,7 @@ jobs:
28942924
./qa/live/dpdk.sh "qa/live/dpdk/suricata-null-ips.yaml"
28952925
# DPDK configuration checks
28962926
- run: ./qa/live/dpdk/dpdk-testsuite.sh
2927+
- run: python3 ./suricata-verify/live/run.py run
28972928

28982929
debian-12:
28992930
name: Debian 12 (xdp)

0 commit comments

Comments
 (0)