From 002249c0ed9c7a683d40342b01423df22d90cefe Mon Sep 17 00:00:00 2001 From: John Kleinschmidt Date: Mon, 27 Apr 2026 12:04:20 -0700 Subject: [PATCH] ci: Revert "build: use 32-core Windows ARC runners for build jobs (#51256)" (#51341) * Revert "build: use 32-core Windows ARC runners for build jobs (#51256)" This reverts commit 099c5c00388fd229a642fd0e0b21ed77bb8cb7bb. * chore: put back siso patch * Revert "fix: route ThinLTO cache through junction outside bindflt mount (#51328)" This reverts commit 9e7a343f39291dd930931c342012d92d7db028a3. * Revert "fix: pre-create thinlto-cache dir on Windows to avoid bindflt race (#51292)" This reverts commit 98e91ca5551e832a9166b7352f22c3ea1c69fd8f. --- .github/actions/build-electron/action.yml | 30 ----------------------- .github/workflows/build.yml | 6 ++--- .github/workflows/windows-publish.yml | 6 ++--- 3 files changed, 6 insertions(+), 36 deletions(-) diff --git a/.github/actions/build-electron/action.yml b/.github/actions/build-electron/action.yml index f068d45510..bf6a4973bb 100644 --- a/.github/actions/build-electron/action.yml +++ b/.github/actions/build-electron/action.yml @@ -107,36 +107,6 @@ runs: git pack-refs cd .. - # Route the ThinLTO cache out of the bindflt filter driver mount. - # The runner workspace under C:\actions-runner\_work\ is exposed via - # bindflt, which intermittently returns ERROR_INVALID_PARAMETER on - # CreateFileW/CreateDirectoryW under the concurrent I/O lld-link - # generates (ThinLTO writes thousands of cache files in parallel). - # Pre-creating the cache directory dodged CreateDirectoryW; opening - # individual cache files inside it still raced. Replace the directory - # with a junction to a path outside the bindflt mount so lld's cache - # I/O bypasses the filter driver entirely. - # - # $env:TEMP on ARC runners lives under - # C:\Users\ContainerAdministrator\AppData\Local\Temp and is not - # bindflt-mounted. The link path mirrors `cache_dir` in Chromium's - # build/config/compiler/BUILD.gn (the `/lldltocache:` ldflag passed - # to lld-link); if upstream ever relocates `cache_dir`, update the - # link path here. - $thinltoCacheLink = "out\Default\thinlto-cache" - $thinltoCacheTarget = Join-Path $env:TEMP "electron-thinlto-cache" - New-Item -ItemType Directory -Force -Path (Split-Path $thinltoCacheLink) | Out-Null - New-Item -ItemType Directory -Force -Path $thinltoCacheTarget | Out-Null - if (Test-Path $thinltoCacheLink) { - $existing = Get-Item $thinltoCacheLink -Force - if ($existing.Attributes -band [System.IO.FileAttributes]::ReparsePoint) { - cmd /c rmdir $thinltoCacheLink | Out-Null - } else { - Remove-Item -Recurse -Force $thinltoCacheLink - } - } - cmd /c mklink /J $thinltoCacheLink $thinltoCacheTarget | Out-Null - $env:NINJA_SUMMARIZE_BUILD = 1 if ("${{ inputs.is-release }}" -eq "true") { e build --target electron:release_build diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 261f81125e..c03ccfc6fb 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -398,7 +398,7 @@ jobs: needs: [checkout-windows, build-siso-windows] if: ${{ needs.setup.outputs.src == 'true' && !inputs.skip-windows }} with: - build-runs-on: electron-arc-centralus-windows-amd64-32core + build-runs-on: electron-arc-centralus-windows-amd64-16core clang-tidy-runs-on: electron-arc-centralus-linux-amd64-8core test-runs-on: windows-latest clang-tidy-container: '{"image":"ghcr.io/electron/build:${{ needs.checkout-windows.outputs.build-image-sha }}","options":"--user root --device /dev/fuse --cap-add SYS_ADMIN","volumes":["/mnt/win-cache:/mnt/win-cache"]}' @@ -419,7 +419,7 @@ jobs: needs: [checkout-windows, build-siso-windows] if: ${{ needs.setup.outputs.src == 'true' && !inputs.skip-windows }} with: - build-runs-on: electron-arc-centralus-windows-amd64-32core + build-runs-on: electron-arc-centralus-windows-amd64-16core test-runs-on: windows-latest target-platform: win target-arch: x86 @@ -438,7 +438,7 @@ jobs: needs: [checkout-windows, build-siso-windows] if: ${{ needs.setup.outputs.src == 'true' && !inputs.skip-windows }} with: - build-runs-on: electron-arc-centralus-windows-amd64-32core + build-runs-on: electron-arc-centralus-windows-amd64-16core test-runs-on: windows-11-arm target-platform: win target-arch: arm64 diff --git a/.github/workflows/windows-publish.yml b/.github/workflows/windows-publish.yml index 748b9c86c1..d156488ffa 100644 --- a/.github/workflows/windows-publish.yml +++ b/.github/workflows/windows-publish.yml @@ -82,7 +82,7 @@ jobs: needs: [checkout-windows, build-siso-windows] with: environment: production-release - build-runs-on: electron-arc-centralus-windows-amd64-32core + build-runs-on: electron-arc-centralus-windows-amd64-16core target-platform: win target-arch: x64 is-release: true @@ -101,7 +101,7 @@ jobs: needs: [checkout-windows, build-siso-windows] with: environment: production-release - build-runs-on: electron-arc-centralus-windows-amd64-32core + build-runs-on: electron-arc-centralus-windows-amd64-16core target-platform: win target-arch: arm64 is-release: true @@ -120,7 +120,7 @@ jobs: needs: [checkout-windows, build-siso-windows] with: environment: production-release - build-runs-on: electron-arc-centralus-windows-amd64-32core + build-runs-on: electron-arc-centralus-windows-amd64-16core target-platform: win target-arch: x86 is-release: true