Skip to content

[codex] Fix desktop release workflow CI#6

Merged
DragonnZhang merged 1 commit into
mainfrom
dragon/fix-desktop-release-ci
Jun 8, 2026
Merged

[codex] Fix desktop release workflow CI#6
DragonnZhang merged 1 commit into
mainfrom
dragon/fix-desktop-release-ci

Conversation

@DragonnZhang

Copy link
Copy Markdown
Collaborator

What this PR does

Fixes the desktop release workflow so the cross-platform build jobs can rerun successfully after the initial 0.0.2 release attempt failed. The build matrix now uses bash consistently for shell expansion, signing secrets are only injected when a signing certificate is configured, generated release branches can be safely retried, and draft releases no longer open/auto-merge the version sync PR.

Why it's needed

The failed run showed two concrete CI issues: Windows ran bun run bump-desktop-version "$RELEASE_VERSION" under PowerShell, so the script received no version argument, and macOS unsigned builds still entered electron-builder's signing path because empty signing variables were present. The failed non-dry-run also left release/desktop-v0.0.2 behind, so rerunning the same release needs to update the generated branch instead of failing on branch creation.

Reviewer Test Plan

How to verify

Re-run the Desktop Release workflow for version 0.0.2. A dry run should build installers only. A non-dry-run from main should push or update release/desktop-v0.0.2, build macOS/Windows/Linux installers, publish the release assets, and only create the version sync PR when Draft is unchecked.

Evidence (Before & After)

Before: GitHub Actions run https://github.com/modelstudioai/openwork/actions/runs/27129329184 failed in Build Windows because Release version is required, and failed in Build macOS with electron-builder signing output ending in /Users/runner/work/openwork/openwork/apps/electron not a file.

After: Local workflow validation passed with actionlint, YAML parsing, git diff --check, and an isolated temp-worktree version bump/check for 0.0.2.

Tested on

OS Status
🍏 macOS ✅ tested
🪟 Windows ⚠️ not tested locally
🐧 Linux ⚠️ not tested locally

Environment (optional)

Local macOS shell in /Users/dragon/Documents/openwork; GitHub Actions logs inspected with gh.

Risk & Scope

  • Main risk or tradeoff: unsigned macOS CI builds now explicitly disable certificate auto-discovery unless CSC_LINK is configured, so signed releases depend on the signing secrets being present.
  • Not validated / out of scope: a full hosted rerun of the Desktop Release workflow has not completed yet from this PR branch.
  • Breaking changes / migration notes: Draft releases intentionally do not sync package versions back to main; run the workflow with Draft unchecked for the final public release.

Linked Issues

References https://github.com/modelstudioai/openwork/actions/runs/27129329184

中文说明

What this PR does

这个 PR 修复 desktop release workflow,让第一次 0.0.2 发版失败之后可以正常重跑。build matrix 现在统一用 bash 做 shell 展开,签名 secret 只有在配置了签名证书时才注入,自动生成的 release 分支可以安全重试更新,并且 draft release 不再创建或自动合并版本同步 PR。

Why it's needed

失败日志里有两个明确问题:Windows 在 PowerShell 下执行 bun run bump-desktop-version "$RELEASE_VERSION",导致脚本没有收到版本号;macOS unsigned build 因为空签名变量存在,仍然进入 electron-builder 的签名逻辑,最后报 /Users/runner/work/openwork/openwork/apps/electron not a file。这次非 dry-run 失败还留下了 release/desktop-v0.0.2 分支,所以同版本重跑需要更新这个生成分支,而不是卡在创建分支上。

Reviewer Test Plan

How to verify

重新运行 Desktop Release workflow,版本填 0.0.2。dry run 应该只构建安装包;从 main 执行非 dry-run 应该 push 或更新 release/desktop-v0.0.2,构建 macOS/Windows/Linux 安装包,发布 release assets,并且只有在 Draft 取消勾选时才创建版本同步 PR。

Evidence (Before & After)

Before: GitHub Actions run https://github.com/modelstudioai/openwork/actions/runs/27129329184 里 Build Windows 因为 Release version is required 失败,Build macOS 在 electron-builder 签名阶段输出 /Users/runner/work/openwork/openwork/apps/electron not a file 后失败。

After: 本地已通过 actionlint、YAML 解析、git diff --check,并在临时 git worktree 中验证了 0.0.2 的实际 bump 再 check 链路。

Tested on

OS Status
🍏 macOS ✅ tested
🪟 Windows ⚠️ not tested locally
🐧 Linux ⚠️ not tested locally

Environment (optional)

本地 macOS shell,目录 /Users/dragon/Documents/openwork;失败日志通过 gh 查看。

Risk & Scope

  • Main risk or tradeoff: macOS CI unsigned build 现在会在没有 CSC_LINK 时显式关闭证书自动发现,所以真正签名发版依赖签名 secrets 已配置完整。
  • Not validated / out of scope: 还没有从这个 PR 分支完整跑完一次托管 Desktop Release workflow。
  • Breaking changes / migration notes: Draft release 会刻意不把版本号同步回 main;最终公开发版时需要在 workflow 里取消勾选 Draft。

Linked Issues

References https://github.com/modelstudioai/openwork/actions/runs/27129329184

@DragonnZhang DragonnZhang merged commit 9ae224a into main Jun 8, 2026
1 check passed
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.

1 participant