diff --git a/.github/workflows/gotests.yml b/.github/workflows/gotests.yml index b6b88aabc4f..a7375ff1dd0 100644 --- a/.github/workflows/gotests.yml +++ b/.github/workflows/gotests.yml @@ -15,7 +15,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ ubuntu-20.04, buildjet-2vcpu-ubuntu-2204-arm ] + os: [ ubuntu-20.04, actuated-arm64-4cpu-8gb ] steps: - name: Checkout code uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 @@ -29,7 +29,7 @@ jobs: - name: Install dependencies run: | - sudo apt-get install libelf-dev netcat-traditional libcap-dev gcc + sudo apt-get -y install libelf-dev netcat-traditional libcap-dev gcc sudo sed -i '/secure_path/d' /etc/sudoers sudo sed -i '/env_reset/d' /etc/sudoers @@ -40,6 +40,8 @@ jobs: - name: Install bpftool uses: mtardy/setup-bpftool@adeab4f9332cc28db56064a93911860d0775665b # v1.0.3 + with: + token: ${{ secrets.GITHUB_TOKEN }} - name: Ensure BPF programs pass verifier run: | diff --git a/.github/workflows/run-e2e-tests.yaml b/.github/workflows/run-e2e-tests.yaml index 9ef9dcd4bcb..d1fc5230891 100644 --- a/.github/workflows/run-e2e-tests.yaml +++ b/.github/workflows/run-e2e-tests.yaml @@ -22,8 +22,9 @@ jobs: runs-on: ${{ matrix.os }} timeout-minutes: 40 strategy: + fail-fast: false matrix: - os: [ ubuntu-22.04, buildjet-4vcpu-ubuntu-2204-arm ] + os: [ ubuntu-22.04, actuated-arm64-4cpu-16gb ] steps: - name: Checkout Code uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 diff --git a/contrib/verify/verify.sh b/contrib/verify/verify.sh index 156377034ad..d5858d191cb 100755 --- a/contrib/verify/verify.sh +++ b/contrib/verify/verify.sh @@ -11,6 +11,7 @@ GREEN="\033[32m" NOCOLOR="\033[0m" TETRAGONDIR=/var/lib/tetragon DEBUG=0 +KERNEL=$(uname -r | cut -d. -f1,2) # retrieves major.minor, e.g. 5.19 usage() { echo "usage: verify.sh [-d] [TETRAGONDIR]" @@ -42,28 +43,33 @@ STATUS=0 for obj in "$TETRAGONDIR"/*.o; do B=$(basename "$obj") - # Alignchecker is not a bpf program, so ignore it + # Alignchecker is not a bpf program, so ignore it if [[ "$B" == bpf_alignchecker* ]]; then continue fi - # Globals is just for testing, so ignore it + # Globals is just for testing, so ignore it if [[ "$B" == bpf_globals* ]]; then continue fi - # Generic tracepoint needs more complex userspace logic to load, so ignore it + # Generic tracepoint needs more complex userspace logic to load, so ignore it if [[ "$B" == bpf_generic_tracepoint* ]]; then continue fi - # Multi kprobe support is still not widely around, skip the object + # Multi kprobe support is still not widely around, skip the object if [[ "$B" == bpf_multi_* ]]; then continue fi - # skip v6.0 objects check, because it is still not widely around - if [[ "$B" == *61.o ]]; then + # Skip v6.1 objects check for kernel < 6.1 + if [[ "$B" == *61.o && $(echo "$KERNEL < 6.1" | bc) == 1 ]]; then + continue + fi + + # Skip bpf_loader for kernel < 5.19 + if [[ "$B" == bpf_loader* && $(echo "$KERNEL < 5.19" | bc) == 1 ]]; then continue fi