ci: use build matrix

This commit is contained in:
Green Sky 2023-10-28 19:37:51 +02:00
parent 3e9a1d0a72
commit 25e68e3acf
No known key found for this signature in database

View File

@ -6,72 +6,26 @@ on:
pull_request: pull_request:
branches: [ master ] branches: [ master ]
env:
BUILD_TYPE: Debug
jobs: jobs:
linux: build_matrix:
strategy:
matrix:
BUILD_TYPE: [Debug, Release]
os: [ubuntu-latest, macos-latest, windows-latest]
timeout-minutes: 10 timeout-minutes: 10
runs-on: ${{matrix.os}}
runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
with: with:
submodules: recursive submodules: recursive
- name: Configure CMake - name: Configure CMake
run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{matrix.BUILD_TYPE}}
- name: Build - name: Build
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}} -j 4 run: cmake --build ${{github.workspace}}/build --config ${{matrix.BUILD_TYPE}} -j 3
- name: Test - name: Test
run: ctest --test-dir ${{github.workspace}}/build -C ${{env.BUILD_TYPE}} --verbose run: ctest --test-dir ${{github.workspace}}/build -C ${{matrix.BUILD_TYPE}} --verbose
macos:
timeout-minutes: 10
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- name: Install Dependencies
run: brew install libsodium
- name: Configure CMake
run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}}
- name: Build
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}} -j 3
- name: Test
run: ctest --test-dir ${{github.workspace}}/build -C ${{env.BUILD_TYPE}} --verbose
windows:
timeout-minutes: 10
runs-on: windows-latest
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
# setup vs env
- uses: ilammy/msvc-dev-cmd@v1
with:
arch: amd64
- name: Configure CMake
run: cmake -G Ninja -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}}
- name: Build
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}} -j 3
- name: Test
run: ctest --test-dir ${{github.workspace}}/build -C ${{env.BUILD_TYPE}} --verbose