Skip to content

Commit e4582c3

Browse files
wwwillchenclaude
andauthored
Improve release workflow: use NuGet for Azure Trusted Signing (#2661)
## Summary - Replace unreliable winget installation with NuGet installation for Azure Trusted Signing tools - Simplify DLL discovery logic to use direct NuGet installation path - Makes Windows signing step more robust and reliable ## Test plan - Verify that the release workflow still builds successfully on Windows runners - Confirm Azure Trusted Signing client is installed and used correctly 🤖 Generated with [Claude Code](https://claude.com/claude-code) <!-- devin-review-badge-begin --> --- <a href="https://app.devin.ai/review/dyad-sh/dyad/pull/2661" target="_blank"> <picture> <source media="(prefers-color-scheme: dark)" srcset="https://static.devin.ai/assets/gh-open-in-devin-review-dark.svg?v=1"> <img src="https://static.devin.ai/assets/gh-open-in-devin-review-light.svg?v=1" alt="Open with Devin"> </picture> </a> <!-- devin-review-badge-end --> <!-- This is an auto-generated description by cubic. --> --- ## Summary by cubic Switch the Windows release workflow to use NuGet for Azure Trusted Signing and simplify DLL discovery to the NuGet install path. This reduces CI flakiness and makes the signing step more reliable. - **Refactors** - Install Microsoft.Trusted.Signing.Client 1.0.95 to $RUNNER_TEMP\TrustedSigning from nuget.org. - Find Azure.CodeSigning.Dlib.dll (x64) by scanning the install directory only. <sup>Written for commit 0dd3277. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. --> <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Low Risk** > Workflow-only change that alters how Windows signing dependencies are installed and discovered; risk is limited to potential release pipeline breakage if the NuGet package layout/version changes. > > **Overview** > Improves the Windows portion of the release workflow by installing Azure Trusted Signing tooling via `nuget` (pinned to `Microsoft.Trusted.Signing.Client` `1.0.95`) instead of `winget`. > > Simplifies DLL discovery by searching only within the NuGet install directory for the x64 `Azure.CodeSigning.Dlib.dll`, then exporting `AZURE_CODE_SIGNING_DLIB` for subsequent signing steps. > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit 0dd3277. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 3109c84 commit e4582c3

File tree

1 file changed

+6
-25
lines changed

1 file changed

+6
-25
lines changed

.github/workflows/release.yml

Lines changed: 6 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -51,32 +51,13 @@ jobs:
5151
if: contains(matrix.os.name, 'windows')
5252
shell: powershell
5353
run: |
54-
winget install -e --id Microsoft.Azure.TrustedSigningClientTools --source winget --accept-source-agreements --accept-package-agreements
54+
# Install via NuGet instead of winget (winget is slow/unreliable in CI)
55+
$installDir = "$env:RUNNER_TEMP\TrustedSigning"
56+
nuget install Microsoft.Trusted.Signing.Client -Version 1.0.95 -OutputDirectory $installDir -Source https://api.nuget.org/v3/index.json
5557
56-
$known = Join-Path $env:LOCALAPPDATA "Microsoft\MicrosoftTrustedSigningClientTools\Azure.CodeSigning.Dlib.dll"
57-
$dllPath = $null
58-
59-
if (Test-Path $known) {
60-
$dllPath = $known
61-
} else {
62-
$searchPaths = @(
63-
(Join-Path $env:LOCALAPPDATA "Microsoft\MicrosoftTrustedSigningClientTools"),
64-
"C:\Program Files",
65-
"$env:LOCALAPPDATA",
66-
"$env:LOCALAPPDATA\Microsoft\WinGet\Packages",
67-
"C:\Users\runneradmin\AppData\Local\Microsoft\WinGet\Packages"
68-
)
69-
70-
foreach ($searchPath in $searchPaths) {
71-
if (Test-Path $searchPath) {
72-
Write-Host "Searching in: $searchPath"
73-
$found = Get-ChildItem -Path $searchPath -Recurse -Filter "Azure.CodeSigning.Dlib.dll" -ErrorAction SilentlyContinue |
74-
Sort-Object { $_.FullName -notlike "*x64*" } |
75-
Select-Object -First 1 -ExpandProperty FullName
76-
if ($found) { $dllPath = $found; break }
77-
}
78-
}
79-
}
58+
$dllPath = Get-ChildItem -Path $installDir -Recurse -Filter "Azure.CodeSigning.Dlib.dll" |
59+
Where-Object { $_.FullName -match "x64" } |
60+
Select-Object -First 1 -ExpandProperty FullName
8061
8162
if ($dllPath) {
8263
Write-Host "Found DLL at: $dllPath"

0 commit comments

Comments
 (0)