diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..3f05923 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,38 @@ +name: CI + +on: + push: + branches: + - main + - develop + tags: + - 'v*' + pull_request: + branches: + - main + - develop + +jobs: + build-and-test: + name: ${{ matrix.os }} - ${{ matrix.build_type }} + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + os: [ubuntu-latest, macos-latest] + build_type: [Debug, Release] + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Configure CMake + run: > + cmake -B build -S . + -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} + + - name: Build + run: cmake --build build --config ${{ matrix.build_type }} + + - name: Test with CTest + run: ctest --test-dir build --output-on-failure -C ${{ matrix.build_type }}