From 5bc1dd3a2af69722b7cf586f9d5f6e8ce0e52ac1 Mon Sep 17 00:00:00 2001 From: "alexey.lysiuk" Date: Mon, 25 Jul 2022 10:53:00 +0300 Subject: [PATCH] Add continuous integration via GitHub Actions --- .github/workflows/continuous_integration.yml | 50 ++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 .github/workflows/continuous_integration.yml diff --git a/.github/workflows/continuous_integration.yml b/.github/workflows/continuous_integration.yml new file mode 100644 index 0000000..30bed28 --- /dev/null +++ b/.github/workflows/continuous_integration.yml @@ -0,0 +1,50 @@ +name: Continuous Integration + +on: [push, pull_request] + +jobs: + build: + name: ${{ matrix.config.name }} + runs-on: ${{ matrix.config.os }} + strategy: + fail-fast: false + matrix: + config: + - { + name: "Linux Clang", + os: ubuntu-20.04, + extra_options: "-DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++" + } + - { + name: "Linux GCC", + os: ubuntu-20.04 + } + - { + name: "macOS", + os: macos-12 + } + - { + name: "Windows", + os: windows-2022 + } + + steps: + - uses: actions/checkout@v3 + + - name: Configure + shell: bash + run: | + cmake -B build ${{ matrix.config.extra_options }} . + + - name: Build + shell: bash + run: | + export MAKEFLAGS=--keep-going + cmake --build build --config Release --parallel 3 + + - name: List Build Directory + if: always() + shell: bash + run: | + git status + ls -lR build