Skip to content

Test eunomia-bpf example CI #668

Test eunomia-bpf example CI

Test eunomia-bpf example CI #668

Workflow file for this run

name: Test eunomia-bpf example CI
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
schedule:
- cron: '0 0 * * 0'
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v7
with:
submodules: 'recursive'
- name: install deps
run: |
sudo apt-get update
sudo apt-get install -y --no-install-recommends \
libelf1 libelf-dev zlib1g-dev \
make git clang llvm pkg-config build-essential dwarves \
linux-headers-generic-hwe-24.04
- name: test 11 bootstrap
run: |
make -C src/11-bootstrap
sudo timeout -s 2 3 src/11-bootstrap/bootstrap || if [ $? = 124 ]; then exit 0; else exit $?; fi
- name: test 12 profile
run: |
make -C src/12-profile
# sudo timeout -s 2 3 src/12-profile/profile || if [ $? = 124 ]; then exit 0; else exit $?; fi
- name: test 13 tcpconnlat
run: |
make -C src/13-tcpconnlat
sudo timeout -s 2 3 src/13-tcpconnlat/tcpconnlat || if [ $? = 124 ]; then exit 0; else exit $?; fi
- name: test 14 tcpstates
run: |
make -C src/14-tcpstates
sudo timeout -s 2 3 src/14-tcpstates/tcpstates || if [ $? = 124 ]; then exit 0; else exit $?; fi
- name: test 15 javagc
run: |
make -C src/15-javagc
- name: test 16 memleak
run: |
make -C src/16-memleak
sudo timeout -s 2 3 src/16-memleak/memleak || if [ $? = 124 ]; then exit 0; else exit $?; fi
- name: test 17 biopattern
run: |
make -C src/17-biopattern
sudo timeout -s 2 3 src/17-biopattern/biopattern || if [ $? = 124 ]; then exit 0; else exit $?; fi
- name: test 23 http
run: |
make -C src/23-http
sudo timeout -s 2 3 src/23-http/sockfilter || if [ $? = 124 ]; then exit 0; else exit $?; fi
- name: test 24 hide
run: |
make -C src/24-hide
- name: test 26 sudo
run: |
make -C src/26-sudo
- name: test 27 replace
run: |
make -C src/27-replace
- name: test 28 detach
run: |
make -C src/28-detach
sudo mount bpffs -t bpf /sys/fs/bpf
sudo mkdir /sys/fs/bpf/textreplace
# sudo src/28-detach/textreplace2 -f /proc/modules -i 'joydev' -r 'cryptd' -d || if [ $? = 124 ]; then exit 0; else exit $?; fi
- name: test 29 sockops
run: |
make -C src/29-sockops
# TODO: add test
- name: test 30 sslsniff
run: |
make -C src/30-sslsniff
sudo timeout -s 2 3 src/30-sslsniff/sslsniff || if [ $? = 124 ]; then exit 0; else exit $?; fi
- name: test 32 wallclock-profiler
run: |
make -C src/32-wallclock-profiler
# Test individual tools can be built and show help
src/32-wallclock-profiler/oncputime --help || true
src/32-wallclock-profiler/offcputime --help || true
- name: test 33 funclatency
run: |
make -C src/33-funclatency
- name: test 34 syscall
run: |
make -C src/34-syscall
- name: test 35-user-ringbuf
run: |
make -C src/35-user-ringbuf
sudo timeout -s 2 3 src/35-user-ringbuf/user_ringbuf || if [ $? = 124 ]; then exit 0; else exit $?; fi
- name: test 38 btf-uprobe
run: |
make -C src/38-btf-uprobe
- name: test 38 btf-uprobe examples
run: |
make -C src/38-btf-uprobe/examples
- name: test 41 xdp
run: |
make -C src/41-xdp-tcpdump
- name: test 42 xdp
run: |
make -C src/42-xdp-loadbalancer
- name: test 43 kfuncs
run: |
make -C src/43-kfuncs
- name: test 43 kfuncs module
run: |
KDIR=$(find /usr/src -maxdepth 1 -type d -name 'linux-headers-*-generic' | sort -V | tail -1)
test -n "$KDIR"
make -C src/43-kfuncs/module KDIR="$KDIR"
- name: test 44
run: |
make -C src/44-scx-simple
- name: test 45
run: |
make -C src/45-scx-nest
- name: test 46 xdp-pktgen
run: |
make -C src/46-xdp-test
- name: test 47 cuda-events
run: |
make -C src/47-cuda-events cuda_events
if command -v nvcc >/dev/null; then
make -C src/47-cuda-events basic02 bench
fi
- name: test 48 energy
run: |
make -C src/48-energy
- name: test 49 HID
run: |
make -C src/49-hid
- name: test features bpf_arena
run: |
make -C src/features/bpf_arena
- name: test features bpf_iters
run: |
make -C src/features/bpf_iters
- name: test features bpf_wq
run: |
make -C src/features/bpf_wq
- name: test features dynptr
run: |
make -C src/features/dynptr
- name: test features struct_ops
run: |
make -C src/features/struct_ops
- name: test features struct_ops module
run: |
KDIR=$(find /usr/src -maxdepth 1 -type d -name 'linux-headers-*-generic' | sort -V | tail -1)
test -n "$KDIR"
make -C src/features/struct_ops/module KDIR="$KDIR"
- name: test 50 tcx
run: |
make -C src/50-tcx
- name: test 51 TCP quarantine
run: |
make -C src/51-tcp-quarantine
sudo timeout 30 make -C src/51-tcp-quarantine test
- name: test 52 fsession latency
run: |
make -C src/52-fsession-latency
- name: test 53 egress pacer
run: |
make -C src/53-egress-pacer
- name: test 54 exec image inspector
run: |
make -C src/54-exec-image-inspector
- name: test features bpf_token
run: |
make -C src/features/bpf_token
- name: test cgroup
run: |
make -C src/cgroup