Skip to content

ci(sync): dispatch beta GHCR builds explicitly; make deploy manual-only - #4

Merged
JOY (JOY) merged 1 commit into
mainfrom
dev
Sep 10, 2026
Merged

ci(sync): dispatch beta GHCR builds explicitly; make deploy manual-only#4
JOY (JOY) merged 1 commit into
mainfrom
dev

Conversation

@JOY

@JOY JOY (JOY) commented Sep 10, 2026

Copy link
Copy Markdown

Fixes the dead half of the Sync Upstream & Deploy Beta pipeline.


Note

Medium Risk
Changes CI release and image-build orchestration; mis-dispatched builds or deploy workflow misuse could block beta artifacts or confuse promotion, but no application runtime code is touched.

Overview
Production deploy no longer runs on every tag push; it is workflow_dispatch only, with comments documenting that this fork expects manual image pulls and optional manual promotion via the existing release branch merge (no auto-deploy).

Upstream sync bumps the workflow Node version to 24 and fixes the broken beta image pipeline: after tagging *-beta and pushing dev, it explicitly gh workflow run build-docker.yml for the beta tag and for dev, because pushes using GITHUB_TOKEN do not start other workflows. Pre-releases are created only when missing (dropping || true so failures surface), and release notes now point at the GHCR image and manual server pull.

Reviewed by Cursor Bugbot for commit dc36f01. Configure here.

Summary by CodeRabbit

  • Deployment
    • Tag pushes no longer trigger deployments automatically; deployments can now be started manually.
    • Beta and development updates now trigger container image builds through the deployment workflow.
    • Pre-releases are created only when one does not already exist, reducing duplicate-release errors.
    • Updated the deployment environment to Node.js 24.

The sync bot pushes dev and the beta tag with GITHUB_TOKEN, and GitHub does not trigger workflows from GITHUB_TOKEN events - so build-docker.yml never ran for bot syncs and no beta image was ever published. workflow_dispatch is the documented exception, so the bot now dispatches build-docker.yml explicitly for the beta tag and for dev after pushing. Image build + GHCR push only: there is no deploy step (servers pull the image manually; no staging/blue-green in this fork).

Also: deploy.yml no longer runs on tag push (it mirrored main into a release branch and needs a GH_TOKEN secret that does not exist here); it is kept as workflow_dispatch for manual promotion. And the pre-release step no longer swallows failures with '|| true' - it checks for an existing release and fails loudly otherwise (every beta so far silently got no GitHub Release). Node bumped 22 -> 24 to match engines.
@cursor

cursor Bot commented Sep 10, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_e9f08148-f153-4726-8c70-411bbb6c719e)

@JOY
JOY (JOY) merged commit 9be9b3b into main Sep 10, 2026
9 of 11 checks passed
@coderabbitai

coderabbitai Bot commented Sep 10, 2026

Copy link
Copy Markdown

Review Change StackReview Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Advanced

Run ID: d17cf354-308b-40d0-85a5-7f32b54e5692

📥 Commits

Reviewing files that changed from the base of the PR and between f2ad203 and dc36f01.

📒 Files selected for processing (2)
  • .github/workflows/deploy.yml
  • .github/workflows/sync-upstream.yml

📝 Walkthrough

Walkthrough

The deployment workflow now requires manual dispatch. The upstream synchronization workflow uses Node.js 24, dispatches Docker image builds for the beta tag and dev branch, and creates the pre-release only when it does not already exist.

Changes

Workflow automation

Layer / File(s) Summary
Manual deployment trigger
.github/workflows/deploy.yml
The deployment workflow changed from automatic tag pushes to workflow_dispatch. Comments document the fork limitations and required GH_TOKEN secret.
Upstream release flow
.github/workflows/sync-upstream.yml
The workflow uses Node.js 24. It dispatches build-docker.yml for the beta tag and dev branch, then creates the pre-release only when it does not already exist.

Estimated code review effort: 2 (Simple) | ~10 minutes

Sequence Diagram(s)

sequenceDiagram
  participant SyncWorkflow as sync-upstream.yml
  participant GitHubActions as GitHub Actions
  participant DockerWorkflow as build-docker.yml
  participant Release as GitHub Release
  SyncWorkflow->>GitHubActions: Dispatch beta Docker build
  SyncWorkflow->>GitHubActions: Dispatch dev Docker build
  GitHubActions->>DockerWorkflow: Build GHCR images
  SyncWorkflow->>Release: Create pre-release if absent
Loading
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch dev

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@gemini-code-assist

Copy link
Copy Markdown

Note

Gemini is unable to generate a review for this pull request due to the file types involved not being currently supported.

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