name: ubuntu-latest-clang-ci on: push: branches: - master - feature/** - improvement/** - bugfix/** pull_request: branches: - master - feature/** - improvement/** - bugfix/** jobs: clang_tests: if: >- ! contains(toJSON(github.event.commits.*.message), '[skip ci]') && ! contains(toJSON(github.event.commits.*.message), '[skip github]') strategy: matrix: version: ['16', '15', '14', '13', '12', '11', '10', '9', '8', '7'] type: [Release, Debug] runs-on: ubuntu-latest name: "Clang ${{matrix.version}}: ${{matrix.type}}" container: image: teeks99/clang-ubuntu:${{matrix.version}} options: -v /usr/local:/host_usr_local env: CC: clang-${{ matrix.version }} CXX: clang++-${{ matrix.version }} CXXFLAGS: -stdlib=libc++ steps: - uses: actions/checkout@v1 - uses: friendlyanon/fetch-core-count@v1 id: cores - name: CMake run: echo "/host_usr_local/bin" >> $GITHUB_PATH - name: Install dependencies run: | apt-get update apt-get install -y git script/ci_install_deps.sh - name: Configure run: cmake -S test -B build -DCMAKE_BUILD_TYPE=${{matrix.type}} - name: Build run: cmake --build build -j ${{steps.cores.outputs.count}} - name: Run working-directory: build run: ctest --output-on-failure -j ${{steps.cores.outputs.count}}