Files
dbx/.github/scripts/bundle-win7-installer.ps1
CSXFanMeng 20c5136a40 feat(query): 查询结果显示来源连接颜色 (#10823)
* feat(query): show source connection colors in results

* fix(query): omit absent result source connection metadata

* ci: retrigger checks after runner timeout

* fix(ci): increase heap budget for frontend type checking

* fix(ci): retry transient Windows installer bundling failures

* test(query): await lazy component imports before teardown

* test: adapt result color and CI coverage to latest main
2026-10-20 00:19:22 +08:00

29 lines
1.3 KiB
PowerShell

param(
[ValidateRange(1, 5)][int]$MaxAttempts = 3,
[ValidateRange(0, 120)][int]$RetryDelaySeconds = 10
)
$ErrorActionPreference = 'Stop'
# Native failures are checked explicitly so transient downloads can be retried.
$PSNativeCommandUseErrorActionPreference = $false
$bundleDir = 'target/x86_64-win7-windows-msvc/release/bundle/nsis'
for ($attempt = 1; $attempt -le $MaxAttempts; $attempt++) {
pnpm tauri bundle --bundles nsis --target x86_64-win7-windows-msvc --config src-tauri/tauri.webview2-win7-fixed.conf.json --config .github/fixtures/win7-nsis-zlib-config.json
$bundleExitCode = $LASTEXITCODE
if ($bundleExitCode -eq 0) { break }
if ($attempt -eq $MaxAttempts) {
throw "Windows 7 installer bundling failed after $MaxAttempts attempts (exit code $bundleExitCode)."
}
Write-Warning "Installer bundling attempt $attempt failed (exit code $bundleExitCode); retrying in $RetryDelaySeconds seconds."
Start-Sleep -Seconds $RetryDelaySeconds
}
$installer = Get-ChildItem -LiteralPath $bundleDir -Filter '*.exe' -File |
Sort-Object LastWriteTimeUtc -Descending |
Select-Object -First 1
if (!$installer) {
throw "Missing Windows 7 fixed-runtime installer in ${bundleDir}"
}
Get-FileHash -LiteralPath $installer.FullName -Algorithm SHA256