88
99jobs :
1010 job :
11- name : ${{ matrix.os }}-${{ matrix.os_version }}-${{ matrix.compiler }}-${{ matrix.build_type }}
11+ name : ${{ matrix.os }}-${{ matrix.os_version }}-${{ matrix.compiler }}-${{ matrix.variant }}
1212 runs-on : ${{ matrix.os }}-${{ matrix.os_version }}
1313
1414 strategy :
1717 os : [macos, ubuntu, windows]
1818 os_version : [latest]
1919 compiler : [cl, clang++, g++]
20- build_type : [debug, release ]
20+ variant : [Debug, Release ]
2121 include :
2222 - os : macos
2323 compiler : clang++
4545
4646 env :
4747 CXX : ${{ matrix.compiler }}
48- VCPKG_BUILD_TYPE : ${{ matrix.build_type }}
4948 VCPKG_DEFAULT_TRIPLET : ${{ matrix.triplet }}
5049 VCPKG_DISABLE_METRICS : true
5150
@@ -59,11 +58,11 @@ jobs:
5958 - uses : friendlyanon/setup-vcpkg@v1
6059 with :
6160 committish : 2025.12.12
62- cache-key : vcpkg-${{ matrix.os }}-${{ matrix.os_version }}-${{ matrix.compiler }}-${{ matrix.build_type }}-${{ hashFiles('vcpkg.json', '.github/vcpkg_overlays/**') }}
63- ignore-reserve- cache-error : true
61+ # vcpkg always builds release, so share cache between debug and release
62+ cache-key : vcpkg-${{ matrix.os }}-${{ matrix.os_version }}-${{ matrix.compiler }}-${{ hashFiles('vcpkg.json', '.github/vcpkg_overlays/**') }}
6463
65- - run : cmake --preset default
66-
67- - run : cmake --build --parallel --preset default
68-
69- - run : ctest --preset default --output-on-failure
64+ - name : cmake
65+ run : |
66+ cmake --preset ${{ matrix.variant }}
67+ cmake --build --parallel --preset ${{ matrix.variant }}
68+ ctest --output-on-failure --preset ${{ matrix.variant }}
0 commit comments