Skip to content

ci(prerelease): fix v0.37.0-rc.1 build failure#586

Merged
Dumbris merged 1 commit into
mainfrom
worktree-agent-a700558d3e88ab3d2
Jun 4, 2026
Merged

ci(prerelease): fix v0.37.0-rc.1 build failure#586
Dumbris merged 1 commit into
mainfrom
worktree-agent-a700558d3e88ab3d2

Conversation

@Dumbris
Copy link
Copy Markdown
Member

@Dumbris Dumbris commented Jun 4, 2026

Root cause

The first real RC build — tag v0.37.0-rc.1prerelease.yml run 26926147427 — failed at the Install Inno Setup (Windows) step on both Windows matrix entries:

choco: The term 'choco' is not recognized as a name of a cmdlet, function, script file, or operable program.
##[error]Process completed with exit code 1.

The prerelease Windows matrix entries were configured with os: ubuntu-latest (cross-compiling the Windows binary on Linux). But the Install Inno Setup and Create Windows installer steps require a real Windows runner — they call choco install innosetup and ISCC.exe, neither of which exists on Ubuntu. By contrast, release.yml runs these same steps on os: windows-latest.

This was a latent bug (not introduced by PR #582). It surfaced now because #582 de-conflicted the workflows so an RC tag runs prerelease.yml end-to-end for the first time, exercising the Windows-installer path on the Linux runner.

The task hypothesis about an Inno Setup VersionInfoVersion 4-part-numeric rejection of -rc.1 does not apply: scripts/installer.iss only sets AppVersion={#Version} (accepts arbitrary strings), no VersionInfoVersion.

Fix (.github/workflows/prerelease.yml)

Mirror the proven release.yml Windows configuration:

  1. Windows matrix → os: windows-latest, cgo: "1" (was ubuntu-latest, cgo: "0") for both amd64 + arm64 — gives choco/ISCC.exe and matches release.yml.
  2. Add shell: bash to the cross-platform bash steps (Copy frontend dist to embed location, Build binary and create archives) — GHA defaults to pwsh on windows-latest, and these blocks use bash syntax ([[ ]], ${VAR#prefix}, rm -rf, cp -r). release.yml sets shell: bash for the same reason.
  3. Windows .zip via PowerShell Compress-Archive — the zip command is unavailable in Git-bash on windows-latest; release.yml already does this with the same comment.

macOS/Linux build behavior is unchanged (those matrix entries untouched; the Windows-only if branch and the new shell: bash match what those steps already used).

Validation

  • python -c 'import yaml; yaml.safe_load(open(...))' → valid YAML.
  • Each change is a 1:1 port of the corresponding release.yml Windows handling, which builds Windows installers successfully today.

Re-testing the RC build (post-merge)

This PR does not re-tag or touch the release. After merge, either:

  • move the v0.37.0-rc.1 tag to the new main commit and re-push, or
  • cut a fresh v0.37.0-rc.2 tag.

Then confirm the prerelease.yml run is green (esp. both Windows build jobs) and a GitHub pre-release is published.

Related: PR #582 (MCP-1012).

The prerelease Windows matrix entries used os: ubuntu-latest, but the
'Install Inno Setup' / 'Create Windows installer' steps require a real
Windows runner (Chocolatey + ISCC.exe). On Ubuntu, 'choco' does not
exist, so the v0.37.0-rc.1 prerelease build (run 26926147427) failed:

  choco: The term 'choco' is not recognized as a name of a cmdlet...
  ##[error]Process completed with exit code 1.

Switch the two Windows matrix entries to windows-latest with cgo: "1",
matching the proven release.yml configuration. Because the shared build
steps now run on a Windows host (default shell pwsh), add shell: bash to
the bash-syntax steps ('Copy frontend dist', 'Build binary and create
archives') and use PowerShell Compress-Archive for the Windows .zip
(the 'zip' command is unavailable in Git-bash on windows-latest) — all
mirroring release.yml. macOS/Linux build behavior is unchanged.
@cloudflare-workers-and-pages
Copy link
Copy Markdown

Deploying mcpproxy-docs with  Cloudflare Pages  Cloudflare Pages

Latest commit: 8f4f924
Status: ✅  Deploy successful!
Preview URL: https://fb8f6a0f.mcpproxy-docs.pages.dev
Branch Preview URL: https://worktree-agent-a700558d3e88a.mcpproxy-docs.pages.dev

View logs

@codecov-commenter
Copy link
Copy Markdown

⚠️ Please install the 'codecov app svg image' to ensure uploads and comments are reliably processed by Codecov.

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Jun 4, 2026

📦 Build Artifacts

Workflow Run: View Run
Branch: worktree-agent-a700558d3e88ab3d2

Available Artifacts

  • archive-darwin-amd64 (28 MB)
  • archive-darwin-arm64 (25 MB)
  • archive-linux-amd64 (16 MB)
  • archive-linux-arm64 (14 MB)
  • archive-windows-amd64 (28 MB)
  • archive-windows-arm64 (24 MB)
  • frontend-dist-pr (0 MB)
  • installer-dmg-darwin-amd64 (21 MB)
  • installer-dmg-darwin-arm64 (19 MB)

How to Download

Option 1: GitHub Web UI (easiest)

  1. Go to the workflow run page linked above
  2. Scroll to the bottom "Artifacts" section
  3. Click on the artifact you want to download

Option 2: GitHub CLI

gh run download 26929530587 --repo smart-mcp-proxy/mcpproxy-go

Note: Artifacts expire in 14 days.

@Dumbris Dumbris merged commit 206bee3 into main Jun 4, 2026
46 of 47 checks passed
@Dumbris Dumbris deleted the worktree-agent-a700558d3e88ab3d2 branch June 4, 2026 04:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants