build: Add libc to matrix for x86-64 tests

To reduce issues caused by flaky tests split the musl and glibc jobs
into separate jobs. This means fewer jobs will need to be restarted for
flaky tests. This will also increase CI throughput since the musl builds
account for ~40% of the total CI time when run together with glibc.

Signed-off-by: Rob Bradford <rbradford@rivosinc.com>
(cherry picked from commit 2e4079becb785e1b948b9cd4ae97ca3ab846a9ef)
This commit is contained in:
Rob Bradford 2024-02-22 16:22:55 +00:00 committed by Bo Chen
parent b312a970ef
commit 23f1490667

View File

@ -6,7 +6,8 @@ jobs:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
runner: ["garm-jammy", "garm-jammy-amd"] runner: ["garm-jammy", "garm-jammy-amd"]
libc: ["musl", "gnu"]
if: github.event_name == 'pull_request' if: github.event_name == 'pull_request'
name: Tests (x86-64) name: Tests (x86-64)
runs-on: ${{ matrix.runner }} runs-on: ${{ matrix.runner }}
@ -31,12 +32,6 @@ jobs:
- name: Load openvswitch module - name: Load openvswitch module
run: sudo modprobe openvswitch run: sudo modprobe openvswitch
- name: Run integration tests - name: Run integration tests
run: scripts/dev_cli.sh tests --integration run: scripts/dev_cli.sh tests --integration --libc ${{ matrix.libc }}
- name: Run live-migration integration tests - name: Run live-migration integration tests
run: scripts/dev_cli.sh tests --integration-live-migration run: scripts/dev_cli.sh tests --integration-live-migration --libc ${{ matrix.libc }}
- name: Run unit tests (musl)
run: scripts/dev_cli.sh tests --unit --libc musl
- name: Run integration tests (musl)
run: scripts/dev_cli.sh tests --integration --libc musl
- name: Run live-migration integration tests (musl)
run: scripts/dev_cli.sh tests --integration-live-migration --libc musl