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 099c5c0038.

* chore: put back siso patch

* Revert "fix: route ThinLTO cache through junction outside bindflt mount (#51328)"

This reverts commit 9e7a343f39.

* Revert "fix: pre-create thinlto-cache dir on Windows to avoid bindflt race (#51292)"

This reverts commit 98e91ca555.
This commit is contained in:
John Kleinschmidt
2026-04-27 12:04:20 -07:00
committed by GitHub
parent 411e3be571
commit 002249c0ed
3 changed files with 6 additions and 36 deletions

View File

@@ -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

View File

@@ -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

View File

@@ -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