release.yml: resilient Windows setup.exe step (skip when Inno Setup unavailable, always ship .zip) - #708
Merged
Conversation
The installer step choco-installs Inno Setup at build time, which fails on self-hosted VM217 (chocolatey cannot write C:\ProgramData\chocolatey\lib-bad). The coin binary + portable .zip build fine but the job dies at the installer, so nothing uploads. Guard the step: use ISCC.exe if already present, else attempt choco install tolerantly, else emit ::warning:: and exit 0. Add continue-on-error and if-no-files-found: ignore on the upload so the portable .zip (must-have) always ships even when the .exe installer (nice-to-have) cannot build. Durable fix is a persistent Inno Setup 6 install on VM217 (ISCC on PATH).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes the last-step Windows failure on v0.2.1 (integrator report 2026-07-15).
Problem
With the /EHsc fix (#707) the boost_sentinel passes and coin binaries build on Windows, but LTC/BCH/DGB/BTC cells now die at the final step "Build setup.exe installer (Inno Setup)":
The step choco-installs Inno Setup at build time; chocolatey cannot write on VM217. The binary and portable .zip build fine but the job fails at the installer, so nothing uploads.
Change (safety net — part 2 of integrator ask)
Guard the setup.exe step:
ISCC.exeif already on the runner; else attemptchoco installtolerantly; else emit::warning::andexit /b 0.continue-on-error: trueon the build step andif-no-files-found: ignoreon the upload, so the portable .zip (must-have) always ships even when the .exe installer (nice-to-have) cannot build.macOS untouched. YAML validated.
Durable fix (part 1 — separate fleet action, not this PR)
Persistent Inno Setup 6 install on VM217 (ISCC on PATH) so the step stops choco-installing at build time — coordinated with the VM217 owner per the no-unilateral-VM rule.
No self-merge — integrator review + operator tap.