Skip to content

Test improvements

Test improvements #608

Workflow file for this run

name: Selftests
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
jobs:
build:
runs-on: ubuntu-22.04
strategy:
matrix:
KERNEL_VERSION:
- "6.10.1-200.fc40"
- "6.6.14-200.fc39"
- "6.1.9-200.fc37"
- "5.16.8-200.fc35"
- "5.11.0-156.fc34"
- "5.6.19-300.fc32"
CLANG_VERSION:
- 16
- 17
- 18
- 19
fail-fast: false
env:
KERNEL_VERSION: ${{ matrix.KERNEL_VERSION }}
CLANG_VERSION: ${{ matrix.CLANG_VERSION }}
CLANG: clang-${{ matrix.CLANG_VERSION }}
LLC: llc-${{ matrix.CLANG_VERSION }}
LLVM_STRIP: llvm-strip-${{ matrix.CLANG_VERSION }}
# can't use unshare on old kernels
DID_UNSHARE: ${{ (startsWith(matrix.KERNEL_VERSION, "5.6") || startsWith(matrix.KERNEL_VERSION, "5.11")) && 1 || 0 }}

Check failure on line 35 in .github/workflows/selftests.yml

View workflow run for this annotation

GitHub Actions / Selftests

Invalid workflow file

The workflow is not valid. .github/workflows/selftests.yml (Line: 35, Col: 20): Unexpected symbol: '"5'. Located at position 36 within expression: (startsWith(matrix.KERNEL_VERSION, "5.6") || startsWith(matrix.KERNEL_VERSION, "5.11")) && 1 || 0
steps:
- name: Check out repository code
uses: actions/checkout@v2
with:
submodules: recursive
- name: Prepare packages
run: |
sudo apt-get update
sudo apt-get install zstd binutils-dev elfutils libpcap-dev libelf-dev gcc-multilib pkg-config wireshark tshark bpfcc-tools python3 python3-pip python3-setuptools qemu-kvm rpm2cpio libdw-dev libdwarf-dev libcap-ng-dev
- name: Prepare Clang
run: |
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
echo "deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy-$CLANG_VERSION main" | sudo tee -a /etc/apt/sources.list
sudo apt-get -qq update
sudo apt-get -qq -y install clang-$CLANG_VERSION lld-$CLANG_VERSION llvm-$CLANG_VERSION
- name: Install latest bpftool
run: |
git clone --depth=1 --recurse-submodules https://github.com/libbpf/bpftool bpftool
make -C bpftool/src
sudo make install -C bpftool/src prefix=/usr
- name: Compile
run: make
- name: Prepare test tools
run: .github/scripts/prepare_test_tools.sh
- name: Prepare test kernel
run: .github/scripts/prepare_test_kernel.sh
- name: Run tests
run: .github/scripts/run_tests_in_vm.sh