Skip to content

[Chore] Fire roomote-main-build on main GHCR publishes - #190

Merged
mrubens merged 1 commit into
developfrom
chore/notify-ops-main-build-1tseuvwtpze87
Jul 11, 2026
Merged

[Chore] Fire roomote-main-build on main GHCR publishes#190
mrubens merged 1 commit into
developfrom
chore/notify-ops-main-build-1tseuvwtpze87

Conversation

@roomote-roomote

Copy link
Copy Markdown
Contributor

Opened on behalf of Matt Rubens. Follow up by mentioning @openmote, in the web UI, or in Slack.

What changed

After each successful GHCR publish on main, the notify-ops job now sends a repository_dispatch of type roomote-main-build to the ops repo named by ROOMOTE_OPS_REPO, with the same image_tag / sha / ref client payload shape as develop (image_tag is the immutable main-<short-sha> published for that build). Develop continues to fire roomote-develop-build.

Why this change was made

The main-channel ops receiver stays inert until the public Roomote publish workflow emits roomote-main-build. Wire the publisher side so main merges and image publishes can drive production autoship the same way develop already does for preview.

Impact

No user-facing product change. Opener of the production autoship path: successful main image publishes notify the configured ops repository when the dispatch token and ROOMOTE_OPS_REPO are set (still skipped for forks with the variable unset). Treat main merges as production releases; autoship does not pause for Postgres backups.

@roomote-roomote

roomote-roomote Bot commented Jul 11, 2026

Copy link
Copy Markdown
Contributor Author

No code issues found. See task

Reviewed the notify-ops change in .github/workflows/publish-ghcr.yml. The if gate now allows both develop and main pushes, and the case "$GITHUB_REF" block selects roomote-main-build / main-<short-sha> for main and keeps roomote-develop-build / develop-<short-sha> for develop. The image_tag matches the immutable tag the prepare job already publishes for each branch (main was already a build/publish trigger before this PR), so the dispatched tag points at a real image. The defensive *) branch is unreachable given the job if, but harmless. needs: publish keeps the dispatch gated on a successful publish, and docs-only pushes stay skipped through the needs chain.

Non-blocking note: the main-/develop- image_tag string is recomputed here rather than consumed from needs.prepare.outputs.version, so the two definitions could drift if the tag format changes. This mirrors the pre-existing develop pattern, so no change required.

@mrubens
mrubens marked this pull request as ready for review July 11, 2026 14:20
@mrubens
mrubens merged commit 9f171bc into develop Jul 11, 2026
1 check passed
@mrubens
mrubens deleted the chore/notify-ops-main-build-1tseuvwtpze87 branch July 12, 2026 04:19
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