Skip to content

Fix failure handling #10

Fix failure handling

Fix failure handling #10

Workflow file for this run

name: Core tests
on: [push, pull_request]
jobs:
Ubuntu:
strategy:
fail-fast: false
matrix:
os:
- ubuntu-22.04
- ubuntu-24.04
name: ${{ matrix.os }}
runs-on: ${{ matrix.os }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Install apt packages
run: |
sudo apt-get update -y --fix-missing
sudo apt-get install -y python3-pip gcc pkg-config ninja-build
- name: Install meson
run: sudo pip3 install --upgrade meson
- name: Install gtest
run: |
mkdir -p subprojects
meson wrap install gtest
- name: Configure
run: meson setup build -Db_sanitize=address,undefined -Dexamples=enabled -Dtests=enabled -Dcompression_tests=disabled
- name: Compile
run: meson compile -v -C build
- name: Run tests
run: meson test --print-errorlogs -C build --suite=core
Debian:
needs: Ubuntu
strategy:
fail-fast: false
matrix:
os-version:
- "12"
- "13"
name: Debian ${{ matrix.os-version }}
runs-on: ubuntu-24.04
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up Docker
uses: docker/setup-buildx-action@v3
- name: Run Debian container
run: |
docker run --rm -v $(pwd):/workspace -w /workspace debian:${{ matrix.os-version }}-slim /bin/bash -c "
set -eou pipefail
apt-get update -y --fix-missing
apt-get install -y python3-pip gcc libgtest-dev libgmock-dev pkg-config ninja-build
pip3 install --break-system-packages --upgrade meson
meson setup build -Db_sanitize=address,undefined -Dexamples=enabled -Dtests=enabled -Dcompression_tests=disabled
meson compile -v -C build
meson test --print-errorlogs -C build --suite=core
"
FreeBSD:
needs: Ubuntu
strategy:
fail-fast: false
matrix:
release:
- "14.3"
defaults:
run:
shell: freebsd {0}
name: FreeBSD ${{ matrix.release }}-RELEASE
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Run FreeBSD VM
uses: vmactions/freebsd-vm@v1
with:
release: ${{ matrix.release }}
prepare: pkg install -y meson googletest pkgconf llvm-devel
- name: Configure
run: cd $GITHUB_WORKSPACE && meson setup build -Db_sanitize=address,undefined -Dexamples=enabled -Dtests=enabled -Dcompression_tests=disabled -Dcpp_args="-fexperimental-library"
- name: Compile
run: cd $GITHUB_WORKSPACE && meson compile -v -C build
- name: Run tests
run: cd $GITHUB_WORKSPACE && meson test --print-errorlogs -C build --suite=core
Alpine:
needs: Ubuntu
runs-on: ubuntu-24.04
strategy:
fail-fast: false
matrix:
arch:
- x86_64
- x86
- armv7
- aarch64
- riscv64
- ppc64le
branch:
- v3.22
defaults:
run:
shell: alpine.sh {0}
name: Alpine ${{ matrix.branch }} (${{ matrix.arch }})
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Setup Alpine
uses: jirutka/setup-alpine@v1
with:
branch: v3.22
arch: ${{ matrix.arch }}
packages: >
pkgconf build-base meson samurai gtest-dev gmock
- name: Configure
run: meson setup build -Dexamples=enabled -Dtests=enabled -Dcompression_tests=disabled
- name: Compile
run: meson compile -v -C build
- name: Run tests
run: meson test --print-errorlogs -C build --suite=core