[INFRA] Update codechecker CI #896
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# SPDX-FileCopyrightText: 2006-2023, Knut Reinert & Freie Universität Berlin | |
# SPDX-FileCopyrightText: 2016-2023, Knut Reinert & MPI für molekulare Genetik | |
# SPDX-License-Identifier: CC0-1.0 | |
name: Misc | |
on: | |
push: | |
branches: | |
- 'main' | |
pull_request: | |
types: | |
- unlabeled | |
workflow_dispatch: | |
concurrency: | |
group: misc-${{ github.event.pull_request.number || github.ref }} | |
cancel-in-progress: ${{ github.event_name != 'push' }} | |
env: | |
TZ: Europe/Berlin | |
defaults: | |
run: | |
shell: bash -Eexuo pipefail {0} | |
jobs: | |
build: | |
name: ${{ matrix.name }} | |
runs-on: ubuntu-latest | |
if: github.repository_owner == 'seqan' || github.event_name == 'workflow_dispatch' || github.event.label.name == 'lint' | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- name: "Snippet clang17" | |
compiler: "clang-17" | |
build: snippet | |
build_type: Release | |
use_include_dependencies: "OFF" | |
- name: "Snippet gcc12" | |
compiler: "gcc-12" | |
build: snippet | |
build_type: Release | |
use_include_dependencies: "OFF" | |
- name: "Performance clang17" | |
compiler: "clang-17" | |
build: performance | |
build_type: Release | |
use_include_dependencies: "OFF" | |
- name: "Performance gcc12" | |
compiler: "gcc-12" | |
build: performance | |
build_type: Release | |
use_include_dependencies: "OFF" | |
- name: "Header clang17" | |
compiler: "clang-17" | |
build: header | |
build_type: Release | |
use_include_dependencies: "OFF" | |
- name: "Header gcc13" | |
compiler: "gcc-13" | |
build: header | |
build_type: Release | |
use_include_dependencies: "OFF" | |
- name: "Header gcc12" | |
compiler: "gcc-12" | |
build: header | |
build_type: Release | |
use_include_dependencies: "OFF" | |
- name: "Non-cyclic tests" | |
compiler: "gcc-12" | |
build: unit | |
build_type: Debug | |
use_include_dependencies: "ON" | |
- name: "Tutorial" | |
compiler: "gcc-12" | |
build: tutorial | |
build_type: Debug | |
use_include_dependencies: "OFF" | |
container: | |
image: ghcr.io/seqan/${{ matrix.compiler }} | |
volumes: | |
- /home/runner:/home/runner | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Load ccache | |
uses: actions/cache@v4 | |
with: | |
path: /home/runner/.ccache | |
key: ccache-${{ runner.os }}-${{ github.workflow }}-${{ matrix.compiler }}-${{ github.ref }} | |
- name: Configure tests | |
run: | | |
mkdir build && cd build | |
cmake ../test/${{ matrix.build }} -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} \ | |
-DCMAKE_CXX_FLAGS="${{ matrix.cxx_flags }}" \ | |
-DHIBF_USE_INCLUDE_DEPENDENCIES="${{ matrix.use_include_dependencies }}" \ | |
-DCMAKE_DEPENDS_USE_COMPILER=OFF | |
case "${{ matrix.build }}" in | |
unit) make -j gtest_main;; | |
snippet) make -j gtest_main;; | |
performance) make -j benchmark_main;; | |
header) make -j gtest_main benchmark_main;; | |
esac | |
- name: Check cyclic includes | |
if: matrix.use_include_dependencies == 'ON' | |
working-directory: build | |
run: | | |
make -k -j all_dependencies | |
cmake . | |
- name: Build tests | |
if: matrix.use_include_dependencies == 'OFF' | |
working-directory: build | |
run: | | |
ccache -z | |
make -k -j | |
ccache -sv | |
- name: Run tests | |
if: matrix.use_include_dependencies == 'OFF' | |
working-directory: build | |
run: ctest . -j --output-on-failure |