Skip to content

ci(nightly): rolling nightly desktop build pinned to main - #14

Merged
brettchien merged 3 commits into
mainfrom
ci/nightly-release
Aug 10, 2026
Merged

ci(nightly): rolling nightly desktop build pinned to main#14
brettchien merged 3 commits into
mainfrom
ci/nightly-release

Conversation

@brettchien

Copy link
Copy Markdown
Contributor

Nightly macOS build pinned to the tip of main, published as a single rolling nightly pre-release (durable URL, unlike 7-day run artifacts).

  • Trigger: schedule 17 18 * * * (18:17 UTC ≈ 02:17 Asia/Taipei) + workflow_dispatch.
  • Pins main: scheduled runs check out the default branch, so it always builds latest master.
  • Rolling: each run recreates the nightly tag/release at the current commit; download is always releases/tag/nightly (or the "nightly" release's asset).
  • In-app build stamp already shows the exact commit (v0.1.0 · <sha>), so a nightly self-identifies.

Sequencing

Scheduled workflows only fire once this file is on main, and the build ships whatever is on main. Right now main is the older in-process app (pre-#9) — so until #9 (sidecar) lands on main, nightly ships that, not the sidecar/tabs/version-stamp build. Recommend landing #9 (→ #10) first to make nightly meaningful. The workflow is written forward-compatible (the sidecar build step is harmless on pre-sidecar main).

Not included (follow-on)

Auto-update (the installed app pulling the nightly) needs a Tauri updater signing key + a latest.json on the release — pending your go on generating/storing the key. This PR only builds + publishes the .dmg.

🤖 Generated with Claude Code

Orca and others added 3 commits August 10, 2026 23:10
Scheduled workflow (18:17 UTC ≈ 02:17 TPE) + manual dispatch. Builds the macOS
app from the tip of main and republishes a single rolling `nightly` pre-release
(durable download URL, unlike 7-day run artifacts). Forward-compatible: builds
+ stages the oab-mcp sidecar (unused on pre-sidecar main revisions).

Not auto-update: that additionally needs a Tauri updater signing key + latest.json.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…tly)

A merged PR is a push to main, so add a push trigger; the daily schedule
stays as a safety net and workflow_dispatch for manual runs.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
When the checked-out app enables updater artifacts (createUpdaterArtifacts +
pubkey), sign the .app.tar.gz with the repo signing key and publish latest.json
on the rolling nightly release so the in-app 檢查更新 button can pull it. Stamps
a monotonic 0.1.0-nightly.<ts> version so the updater can compare builds.
Forward-compatible: inert on pre-updater main (no tarball → latest.json skipped).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@brettchien
brettchien merged commit 4c065a3 into main Aug 10, 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