restore cache after setup-vcpkg to avoid error on mac #47
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
| name: cmake-test | |
| on: | |
| push: | |
| branches: [ "*" ] | |
| pull_request: | |
| branches: [ "*" ] | |
| jobs: | |
| job: | |
| name: ${{ matrix.os }}-${{ matrix.os_version }}-${{ matrix.compiler }}-${{ matrix.variant }} | |
| runs-on: ${{ matrix.os }}-${{ matrix.os_version }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [macos, ubuntu, windows] | |
| os_version: [latest] | |
| compiler: [cl, clang++, g++] | |
| variant: [Debug, Release] | |
| include: | |
| - os: macos | |
| compiler: clang++ | |
| triplet: arm64-osx | |
| - os: ubuntu | |
| compiler: clang++ | |
| triplet: x64-linux | |
| - os: ubuntu | |
| compiler: g++ | |
| triplet: x64-linux | |
| - os: windows | |
| compiler: cl | |
| triplet: x64-windows | |
| exclude: | |
| - os: macos | |
| compiler: cl | |
| - os: macos | |
| compiler: g++ | |
| - os: ubuntu | |
| compiler: cl | |
| - os: windows | |
| compiler: clang++ | |
| - os: windows | |
| compiler: g++ | |
| env: | |
| CXX: ${{ matrix.compiler }} | |
| VCPKG_DEFAULT_TRIPLET: ${{ matrix.triplet }} | |
| VCPKG_DISABLE_METRICS: true | |
| VCPKG_ROOT: /Users/runner/work/firestarr-cpp/firestarr-cpp/vcpkg | |
| VCPKG_DEFAULT_BINARY_CACHE: /Users/runner/work/firestarr-cpp/firestarr-cpp/vcpkg/.cache | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| submodules: true | |
| - uses: ilammy/msvc-dev-cmd@v1 | |
| - uses: friendlyanon/setup-vcpkg@v1 | |
| with: | |
| committish: 2025.12.12 | |
| # getting a warning when cache exists, so just save/restore ourselves | |
| cache: false | |
| - name: Restore cache for vcpkg | |
| id: cache-vcpkg-restore | |
| uses: actions/cache/restore@v4 | |
| with: | |
| # vcpkg always builds release, so share cache between debug and release | |
| key: vcpkg-${{ matrix.os }}-${{ matrix.os_version }}-${{ matrix.compiler }}-${{ hashFiles('vcpkg.json', '.github/vcpkg_overlays/**') }} | |
| path: | | |
| ${{ env.VCPKG_DEFAULT_BINARY_CACHE }} | |
| - run: cmake --preset ${{ matrix.variant }} | |
| - run: cmake --build --parallel --preset ${{ matrix.variant }} | |
| - run: ./firestarr -h | |
| - run: ctest --output-on-failure --preset ${{ matrix.variant }} | |
| - name: Save cache for vcpkg | |
| id: cache-vcpkg-save | |
| if: steps.cache-vcpkg-restore.outputs.cache-hit != 'true' | |
| uses: actions/cache/save@v4 | |
| with: | |
| key: ${{ steps.cache-vcpkg-restore.outputs.cache-primary-key }} | |
| path: | | |
| ${{ env.VCPKG_DEFAULT_BINARY_CACHE }} |