Author: ivan
Date: Mon May 11 13:32:46 2026
New Revision: 1934099

Log:
On 1.15.x: Merge r1930901 from trunk:
  Use actions/cache instead of removed x-gha cache feature for vcpkg built
  binaries caching.
  Justification:
    Fix a broken vcpkg binary caching on GitHub Actions.
  Votes:
    +1: ivan (only affects GHA)

Modified:
   subversion/branches/1.15.x/   (props changed)
   subversion/branches/1.15.x/.github/workflows/cmake.yml

Modified: subversion/branches/1.15.x/.github/workflows/cmake.yml
==============================================================================
--- subversion/branches/1.15.x/.github/workflows/cmake.yml      Mon May 11 
13:26:20 2026        (r1934098)
+++ subversion/branches/1.15.x/.github/workflows/cmake.yml      Mon May 11 
13:32:46 2026        (r1934099)
@@ -93,7 +93,6 @@ jobs:
     name: ${{ matrix.name }}
 
     env:
-      VCPKG_BINARY_SOURCES: "clear;x-gha,readwrite"
       CMAKE_GENERATOR: ${{ matrix.cmake_generator }}
 
     steps:
@@ -106,22 +105,42 @@ jobs:
 
           ls env: | foreach { "$($_.Name)=$($_.Value)" >> $env:GITHUB_ENV }
 
-      - name: Export GitHub Actions cache environment variables
+      - name: Get vcpkg sha (Windows, vcpkg)
         if: runner.os == 'Windows'
-        uses: actions/github-script@v7
+        id: vcpkg-sha
+        run: |
+          cd C:\vcpkg
+          $sha = git rev-parse HEAD
+          echo "sha=$sha" >> $env:GITHUB_OUTPUT
+
+      - name: Restore vcpkg archives (Windows, vcpkg)
+        if: runner.os == 'Windows'
+        uses: actions/cache/restore@v4
         with:
-          script: |
-            core.exportVariable('ACTIONS_CACHE_URL', 
process.env.ACTIONS_CACHE_URL || '');
-            core.exportVariable('ACTIONS_RUNTIME_TOKEN', 
process.env.ACTIONS_RUNTIME_TOKEN || '');
+          path: vcpkg-archives
+          key: vcpkg/${{ runner.os }}/${{ matrix.vcpkg_triplet }}/${{ 
steps.vcpkg-sha.outputs.sha }}
+          restore-keys: vcpkg/${{ runner.os }}/${{ matrix.vcpkg_triplet }}/
 
       - name: Install dependencies (Windows, vcpkg)
         if: runner.os == 'Windows'
+        env:
+          VCPKG_DEFAULT_BINARY_CACHE: ${{ github.workspace }}\vcpkg-archives
         run: |
+          if (-not (Test-Path $env:VCPKG_DEFAULT_BINARY_CACHE)) {
+            New-Item $env:VCPKG_DEFAULT_BINARY_CACHE -ItemType Directory | 
Out-Null
+          }
           C:\vcpkg\vcpkg.exe install --triplet ${{ matrix.vcpkg_triplet }} `
             apr apr-util serf expat zlib sqlite3
 
           "CMAKE_TOOLCHAIN_FILE=C:/vcpkg/scripts/buildsystems/vcpkg.cmake" >> 
$env:GITHUB_ENV
 
+      - name: Save vcpkg archives (Windows, vcpkg)
+        if: runner.os == 'Windows'
+        uses: actions/cache/save@v4
+        with:
+          path: vcpkg-archives
+          key: vcpkg/${{ runner.os }}/${{ matrix.vcpkg_triplet }}/${{ 
steps.vcpkg-sha.outputs.sha }}
+
       - name: Install dependencies (Linux, apt-get)
         if: runner.os == 'Linux'
         run: >

Reply via email to