2121 test-all-features :
2222 name : cargo test with all features
2323 strategy :
24- max-parallel : 1
2524 fail-fast : false
2625 matrix :
2726 include :
@@ -35,25 +34,22 @@ jobs:
3534 llvm : " 17"
3635 runs-on : ${{ matrix.kernel }}
3736 if : github.event_name == 'push' || github.event_name == 'workflow_dispatch' || github.event.pull_request.head.repo.full_name != github.repository
37+ env :
38+ # CI only needs line numbers for panic backtraces, not full DWARF.
39+ # Overrides the `debug = true` (for cargo flamegraph) in the root Cargo.toml
40+ # to cut release build artifact size and disk writes.
41+ CARGO_PROFILE_RELEASE_DEBUG : " line-tables-only"
42+ # LLVM is preinstalled on the runners (apt: clang-N llvm-N libclang-N-dev).
43+ # Point bindgen (via libbpf-sys) at the matching preinstalled libclang.
44+ LIBCLANG_PATH : /usr/lib/llvm-${{ matrix.llvm }}/lib
3845 steps :
39- - uses : actions/checkout@v4
46+ - uses : actions/checkout@v5
4047 with :
4148 submodules : recursive
4249 - uses : dtolnay/rust-toolchain@stable
4350 - run : sudo apt update && sudo apt install ethtool iputils-ping iproute2 iperf3 pkg-config m4 libelf-dev libpcap-dev gcc-multilib libnftnl-dev libmnl-dev autoconf automake autopoint flex bison gawk libtool -y
44- - name : Cache LLVM and Clang
45- id : cache-llvm
46- uses : maxnowack/local-cache@v2
47- with :
48- path : |
49- C:/Program Files/LLVM
50- ./llvm
51- key : llvm-${{ matrix.llvm }}
52- - name : Install LLVM and Clang
53- uses : KyleMayes/install-llvm-action@v2
54- with :
55- version : ${{ matrix.llvm }}
56- cached : ${{ steps.cache-llvm.outputs.cache-hit }}
51+ - name : Use preinstalled LLVM ${{ matrix.llvm }}
52+ run : echo "/usr/lib/llvm-${{ matrix.llvm }}/bin" >> "$GITHUB_PATH"
5753 - name : Install nextest
5854 uses : taiki-e/install-action@nextest
5955 - run : cargo nextest run --profile ci -F http,xdp --release --workspace
0 commit comments