Skip to content

Add clang21 devcontainer #134

Add clang21 devcontainer

Add clang21 devcontainer #134

Workflow file for this run

name: Qbs-Tests
on: push
jobs:
linux:
name: "Linux"
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
- image: arbmind/qbs-clang:3.1.2-18
build_args: "modules.cpp.cxxStandardLibrary:libc++ modules.cpp.staticLibraries:c++,c++abi"
- image: arbmind/qbs-clang:3.1.2-21
build_args: "modules.cpp.cxxStandardLibrary:libc++ modules.cpp.staticLibraries:c++,c++abi"
- image: arbmind/qbs-clang-libstdcpp:3.1.2-21-15
- image: arbmind/qbs-gcc:3.1.2-13
- image: arbmind/qbs-gcc:3.1.2-14
- image: arbmind/qbs-gcc:3.1.2-15
steps:
- uses: actions/checkout@v4
# we have no git in container fetch googletest before
- name: Get Googletest
run: script/git_clone_googletest.sh
- name: Build and run Tests
run: >-
docker run --rm -v ${GITHUB_WORKSPACE}:/project -w /project
--env GTEST_OUTPUT=xml:/project/reports/qbs/
--env QBS_GOOGLETEST_SOURCE=/project/script/googletest
${{ matrix.image }}
build
--build-directory /tmp/build
${{ matrix.build_args }}
-p autotest-runner
- name: Test Report
uses: dorny/test-reporter@v2
if: success() || failure()
with:
name: ${{ matrix.image }} Tests
path: reports/**/*.xml
reporter: java-junit
windows:
name: "Windows"
runs-on: ${{ matrix.os }}
continue-on-error: ${{ matrix.experimental }}
strategy:
fail-fast: false
matrix:
include:
- os: windows-2019
vcvars: C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat
experimental: false
- os: windows-2022
vcvars: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat
experimental: false
steps:
- name: Install Qbs
run: choco install qbs
- name: Setup Qbs
run: |
qbs setup-toolchains --type msvc $(cmd /c '"${{ matrix.vcvars }}" >nul & where cl') msvc
- uses: actions/checkout@v4
- name: Build and run Tests
env:
GTEST_OUTPUT: xml:${{ github.workspace }}\reports\msvc\
run: >-
qbs build profile:msvc
--build-directory ${env:RUNNER_TEMP}\build
-p autotest-runner
- name: Test Report
uses: dorny/test-reporter@v2
if: success() || failure()
with:
name: ${{ matrix.os }} Tests
path: reports/**/*.xml
reporter: java-junit