Add CI test for CMake installation #423
Workflow file for this run
This file contains hidden or 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-License-Identifier: Apache-2.0 WITH LLVM-exception | ||
| name: Continuous Integration Tests | ||
| on: | ||
| push: | ||
| branches: | ||
| - main | ||
| pull_request: | ||
| workflow_dispatch: | ||
| schedule: | ||
| - cron: '20 19 * * *' | ||
| - cron: "0 16 * * 0" | ||
| jobs: | ||
| beman-submodule-check: | ||
| uses: bemanproject/infra-workflows/.github/workflows/reusable-beman-submodule-check.yml@1.0.0 | ||
| preset-test: | ||
| uses: bemanproject/infra-workflows/.github/workflows/reusable-beman-preset-test.yml@1.0.0 | ||
| with: | ||
| matrix_config: > | ||
| [ | ||
| {"preset": "gcc-debug", "image": "ghcr.io/bemanproject/infra-containers-gcc:latest"}, | ||
| {"preset": "gcc-release", "image": "ghcr.io/bemanproject/infra-containers-gcc:latest"}, | ||
| {"preset": "msvc-debug", "runner": "windows-latest"}, | ||
| {"preset": "msvc-release", "runner": "windows-latest"} | ||
| ] | ||
| build-and-test: | ||
| uses: bemanproject/infra-workflows/.github/workflows/reusable-beman-build-and-test.yml@1.0.0 | ||
| with: | ||
| matrix_config: > | ||
| { | ||
| "gcc": [ | ||
| { "versions": ["trunk"], | ||
| "tests": [ | ||
| { "cxxversions": ["c++26"], | ||
| "tests": [ | ||
| { "stdlibs": ["libstdc++"], | ||
| "tests": [ | ||
| "Debug.Default", "Release.Default", "Release.MaxSan", | ||
| "Debug.Werror", "Debug.Dynamic", "Debug.Coverage", | ||
| "Debug.-DBEMAN_UTF_VIEW_BUILD_PAPER=ON" | ||
| ] | ||
| } | ||
| ] | ||
| }, | ||
| { "cxxversions": ["c++23"], | ||
| "tests": [{ "stdlibs": ["libstdc++"], "tests": ["Release.Default"]}] | ||
| } | ||
| ] | ||
| }, | ||
| { "versions": ["15", "14"], | ||
| "tests": [ | ||
| { "cxxversions": ["c++26", "c++23"], | ||
| "tests": [{ "stdlibs": ["libstdc++"], "tests": ["Release.Default"]}] | ||
| } | ||
| ] | ||
| } | ||
| ], | ||
| "clang": [ | ||
| { "versions": ["trunk"], | ||
| "tests": [ | ||
| { "cxxversions": ["c++26"], | ||
| "tests": [ | ||
| { "stdlibs": ["libc++"], | ||
| "tests": [ | ||
| "Debug.Default", "Release.Default", "Release.MaxSan", | ||
| "Debug.Werror", "Debug.Dynamic" | ||
| ] | ||
| } | ||
| ] | ||
| }, | ||
| { "cxxversions": ["c++23"], | ||
| "tests": [{"stdlibs": ["libc++"], "tests": ["Release.Default"]}] | ||
| } | ||
| ] | ||
| }, | ||
| { "versions": ["21", "20", "19"], | ||
| "tests": [ | ||
| { "cxxversions": ["c++26", "c++23"], | ||
| "tests": [ | ||
| {"stdlibs": ["libc++"], "tests": ["Release.Default"]} | ||
| ] | ||
| } | ||
| ] | ||
| } | ||
| ], | ||
| "msvc": [ | ||
| { "versions": ["latest"], | ||
| "tests": [ | ||
| { "cxxversions": ["c++23"], | ||
| "tests": [ | ||
| { "stdlibs": ["stl"], | ||
| "tests": ["Debug.Default", "Release.Default", "Release.MaxSan"] | ||
| } | ||
| ] | ||
| } | ||
| ] | ||
| } | ||
| ] | ||
| } | ||
| install-test: | ||
| uses: bemanproject/infra-workflows/.github/workflows/reusable-beman-install-test.yml | ||
| with: | ||
| image: ghcr.io/bemanproject/infra-containers-gcc:latest | ||
| cxx_standard: 26 | ||
| create-issue-when-fault: | ||
| needs: [preset-test, build-and-test] | ||
| if: failure() && github.event.schedule == '20 19 * * *' | ||
| uses: bemanproject/infra-workflows/.github/workflows/reusable-beman-create-issue-when-fault.yml@1.0.0 | ||
| auto-update-pre-commit: | ||
| if: github.event.schedule == '00 16 * * 0' | ||
| uses: bemanproject/infra-workflows/.github/workflows/reusable-beman-update-pre-commit.yml@1.0.0 | ||