diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 0000000000..c368930777 --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,53 @@ +name: Tests + +on: + push: + branches: + - 'master' + pull_request: + branches: + - '*' + +jobs: + build: + runs-on: ubuntu-latest + strategy: + fail-fast: false # don't cancel if a job from the matrix fails + matrix: + compiler: + - { compiler: GNU, CC: gcc, CXX: g++, FORMAT: ON } + - { compiler: LLVM, CC: clang, CXX: clang++, FORMAT: OFF } + #flavor: [ Release, Coverage ] # TODO + flavor: [ Release ] + exclude: + - compiler: { compiler: LLVM, CC: clang, CXX: clang++ } + flavor: Coverage + + steps: + - uses: actions/checkout@v2 + with: + submodules: 'recursive' + - name: Install Dependencies + run: | + sudo apt install -y clang cmake g++ gcc lcov + - name: Fetch coveralls + if: matrix.flavor == 'Coverage' + run: | + pip install --user cpp-coveralls + + - name: Build & Run + run: | + cmake -DCMAKE_BUILD_TYPE=${{ matrix.flavor }} -DSUPPORT_STDIOSTREAM=ON -DTESTING=ON -DFORMAT=${{ matrix.compiler.FORMAT }} . + make check + + # TODO: enable +# - name: Coveralls build +# if: matrix.flavor == 'Coverage' +# run: | +# cpp-coveralls -i matrix +# - name: Coveralls +# if: matrix.flavor == 'Coverage' +# uses: coverallsapp/github-action@master +# with: +# github-token: ${{ secrets.GITHUB_TOKEN }} + diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 3b5f105333..0000000000 --- a/.travis.yml +++ /dev/null @@ -1,41 +0,0 @@ -language: c - -env: - global: - - export COVERALLS_SERVICE_NAME=travis-ci - - secure: "dA+jGAR9O3f+xsh6h7e7coeM0dU1vHiiM7kIPh5TvbbifDQiF5s2uxFQziZVSnLuohRD9oNODiJFz077n+svp7S9t77sdks0+7r61pkD5LlVItZ6ol5jQCfiksyMw6q5ChEes9KSKEfdFRjuDvQUHwShgpsXVAurizA2Hs3MziWxfIlOPULY4UCCm5+TLoY+vXmfFc4bwk2knxpIP8pYRd+xKYAiN9QC1fJiglipuKHaYbo2+ZYrM92RD0Cl+BZdWyI7vD7zmeXV6mstzAFZ20c63NhNNCYRy0VIC3hLB8zKMuvCZdJnpmSRfFt5uJYJPNcORc1ypeY7/CGMm5Rq1lNwxehFO3/++/aHE8H7GR0cTiKndPO0jDu48j+GUB4k1HHSsVEpj7vO7F3FOO0619xxybDFk1zFjHw8KTbdSXmBERldYAKZOP0JKZxp6CU5DXOO2dunumZAzl6WHJjhRMPFqPheE4e+I2YOEHvXTwDcEO/lMwacr6nuaZZXxEh/TwEdqsIRd9bvsoG1zuVQnZm+atLp3oF4QW8nI5l6qe6R+3l5dEgJGtz5hOsiEpWrwWk6ub2VCdELcgpPZyZcdwu/bKvXx3ndW6LjqzcLxMGxM3rdxx6J+b7Es/vkmT1SXFcxiUjpKkUf04Bb8SmGdbJdAKRZuSRFtjqsU0tHPfo=" - -matrix: - fast_finish: true - include: - - os: linux - dist: bionic - compiler: gcc-8 - env: CMAKE_BUILD_TYPE=Coverage FORMAT=ON - - os: linux - dist: bionic - compiler: clang - env: CMAKE_BUILD_TYPE=Release CC=clang CXX=clang++ FORMAT=OFF - - os: osx - osx_image: xcode11.3 - env: CMAKE_BUILD_TYPE=Release FORMAT=OFF - -addons: - apt: - packages: - - clang - - cmake - - g++-8 - - gcc - - lcov - -install: - - if [ "${CMAKE_BUILD_TYPE}" = "Coverage" ]; then pip install --user cpp-coveralls; fi - -script: - - cmake -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -DSUPPORT_STDIOSTREAM=ON -DTESTING=ON -DFORMAT=${FORMAT} . - - make check - -after_success: - - if [ "${CMAKE_BUILD_TYPE}" = "Coverage" ]; then cpp-coveralls -i matrix; fi - - if [ "${CMAKE_BUILD_TYPE}" = "Coverage" ]; then bash <(curl -s https://codecov.io/bash) -F matrix_tests; fi