fix(cli): stabilize Windows ARM64 Node builds (#37503)

This commit is contained in:
Simon Klee 2026-07-17 16:45:14 +02:00 committed by GitHub
commit f8470404e3
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 5 additions and 3 deletions

View file

@ -135,7 +135,7 @@ jobs:
- target: darwin-arm64
host: macos-26
- target: windows-arm64
host: windows-2025
host: blacksmith-4vcpu-windows-2025
- target: windows-x64
host: blacksmith-4vcpu-windows-2025
runs-on: ${{ matrix.settings.host }}

View file

@ -170,8 +170,10 @@ async function resolveTargetNode(target: NodeTarget, host?: string) {
await rm(temporary, { recursive: true, force: true })
await mkdir(temporary)
if (target.platform !== "win32") run("tar", ["-xzf", archive, "-C", temporary])
else if (process.platform === "win32") run("tar", ["-xf", archive, "-C", temporary])
else run("unzip", ["-q", archive, "-d", temporary])
if (target.platform === "win32" && process.platform === "win32") {
run(path.join(process.env.SystemRoot ?? "C:\\Windows", "System32", "tar.exe"), ["-xf", archive, "-C", temporary])
}
if (target.platform === "win32" && process.platform !== "win32") run("unzip", ["-q", archive, "-d", temporary])
await rm(targetDirectory, { recursive: true, force: true })
await rename(path.join(temporary, archiveName), targetDirectory)
await writeFile(path.join(targetDirectory, ".verified"), `${expected}\n`)