From 5928e6182bee460c746147b5582ef2a7447145e0 Mon Sep 17 00:00:00 2001 From: Alex T Date: Sun, 14 Dec 2025 19:52:26 +0100 Subject: [PATCH] build/test: add Github workflow for basic Arm/x86/MOCK build/test Co-authored-by: Tom Ingleby Signed-off-by: Alex T --- .github/workflows/build_and_test.yaml | 48 +++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 .github/workflows/build_and_test.yaml diff --git a/.github/workflows/build_and_test.yaml b/.github/workflows/build_and_test.yaml new file mode 100644 index 0000000..acb8ecf --- /dev/null +++ b/.github/workflows/build_and_test.yaml @@ -0,0 +1,48 @@ +name: Build and test + +on: + push: + branches: [ main ] + pull_request: + branches: [ main ] + workflow_dispatch: + +permissions: + contents: read + +jobs: + Build_and_test: + strategy: + fail-fast: false + matrix: + include: + - arch: x86_64 + runs_on: ubuntu-latest + run_tests: true + - arch: arm + runs_on: ubuntu-24.04-arm + run_tests: true + - arch: MOCK + runs_on: ubuntu-latest + run_tests: true + runs-on: ${{ matrix.runs_on }} + steps: + - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + + - name: Install dependencies + run: | + sudo apt-get update + sudo apt-get install -y cmake ninja-build build-essential python3-dev libnode-dev swig libjson-c-dev git libgtest-dev + + - name: Build + run: | + mkdir build + cd build + cmake -G Ninja -DBUILDSWIGNODE=on -DBUILDARCH=${{ matrix.arch }} ../ + ninja + + - name: Run tests + if: matrix.run_tests + run: | + cd build + ninja test