From 50ffe74fd2f6fbfeef5679ddafc9b19710f70b9a Mon Sep 17 00:00:00 2001 From: Timothee Guerin Date: Tue, 28 Jan 2025 15:15:03 -0800 Subject: [PATCH] . --- .../pipelines/jobs/build-standalone-cli.yml | 19 +++++++++++-------- packages/standalone/scripts/build.ts | 6 +++++- 2 files changed, 16 insertions(+), 9 deletions(-) diff --git a/eng/tsp-core/pipelines/jobs/build-standalone-cli.yml b/eng/tsp-core/pipelines/jobs/build-standalone-cli.yml index 07bceaa5d1..f6e30f5a73 100644 --- a/eng/tsp-core/pipelines/jobs/build-standalone-cli.yml +++ b/eng/tsp-core/pipelines/jobs/build-standalone-cli.yml @@ -27,24 +27,27 @@ jobs: hostArchitecture: ${{ parameters.hostArchitecture }} steps: - - ${{ if eq(parameters.os, 'windows') }}: - - pwsh: | - Get-ChildItem "C:/Program Files (x86)/Windows Kits/10/bin/" - Get-ChildItem "C:/Program Files (x86)/Windows Kits/10/bin/x64/" - Get-ChildItem "C:/Program Files (x86)/Windows Kits/10/bin/10.0.26100.0/" - Get-ChildItem "C:/Program Files (x86)/Windows Kits/10/bin/10.0.26100.0/x64" - displayName: Check signtool is installed - - task: NodeTool@0 displayName: Install Node.js retryCountOnTaskFailure: 3 inputs: versionSpec: 22.x + - pwsh: | + Get-ChildItem "C:/Program Files (x86)/Windows Kits/10/bin/" + Get-ChildItem "C:/Program Files (x86)/Windows Kits/10/bin/10.0.26100.0/x64" + + $windowsSdkPath=Get-ChildItem "C:/Program Files (x86)/Windows Kits/10/bin/1*" | Select-Object FullName | Sort-Object -Descending { [version](Split-Path $_.FullName -leaf)} | Select-Object -first 1 + $signtoolPath = "$($windowsSdkPath.FullName)\x64\signtool.exe" + echo "Sign tool path: $signtoolPath" + echo "##vso[task.setvariable variable=SIGNTOOL_PATH]$signtoolPath" + displayName: Find signtool path + - script: npm install -g pnpm displayName: Install pnpm - script: pnpm install --filter "@typespec/standalone-cli" displayName: Install JavaScript Dependencies + - script: pnpm build workingDirectory: packages/standalone displayName: Build diff --git a/packages/standalone/scripts/build.ts b/packages/standalone/scripts/build.ts index a5effc660b..8f459ca5d9 100644 --- a/packages/standalone/scripts/build.ts +++ b/packages/standalone/scripts/build.ts @@ -1,5 +1,6 @@ import * as esbuild from "esbuild"; import { execa } from "execa"; +import { execFileSync } from "node:child_process"; import { copyFile, mkdir } from "node:fs/promises"; import ora from "ora"; import { dirname, join } from "path"; @@ -53,7 +54,10 @@ async function createSea() { if (process.platform === "darwin") { execa`codesign --remove-signature ${exePath}`; } else if (process.platform === "win32") { - execa`signtool remove /s ${exePath}`; + console.log("process.env.SIGNTOOL_PATH", process.env.SIGNTOOL_PATH); + if (process.env.SIGNTOOL_PATH) { + execFileSync(process.env.SIGNTOOL_PATH!, [`remove`, `/s`, exePath]); + } } }); await action(`Creating blob ${seaConfigPath}`, async () => {