feat(ci): publish omnigraph-server container image to GHCR on release#340
Merged
Conversation
Build binaries inside a rust:1-bookworm container (matching the Dockerfile's bookworm-slim runtime glibc) with the aws feature enabled, then build and push ghcr.io/<owner>/omnigraph-server:<tag>. Separate from release.yml so an image failure never blocks the binary release, and a workflow_dispatch backfill of a past tag never re-runs the release matrix or repoints :latest. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…flow + GHCR image - Guard workflow_dispatch: the free-form tag input must name an EXISTING v* tag (gh api ref check) and checkout is pinned to refs/tags/<tag>, so a branch/SHA can never be published under a release-looking image tag (greptile P1). - docs/dev/ci.md: add the publish-image.yml entry (same-PR docs rule). - docs/user/deployment.md: document pulling the prebuilt GHCR image. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds
.github/workflows/publish-image.yml: builds the CLI + server inside arust:1-bookwormcontainer (matching the Dockerfile's bookworm-slim runtime glibc — host-built ubuntu binaries do not run there), builds the canonical Dockerfile, and pushesghcr.io/modernrelay/omnigraph-server:<tag>withpackages: writeviaGITHUB_TOKEN.v*tag push, plusworkflow_dispatchwith an explicittagto backfill an image for a past release (same dual-trigger pattern as release.yml).latestmoves only on real tag pushes, never on dispatch backfills.--features omnigraph-server/awsso both bearer-token sources work from one public image.@sha256:….One-time follow-up after the first publish: set the GHCR package's visibility to Public and link it to this repo.
🤖 Generated with Claude Code
Greptile Summary
This PR adds a GHCR publishing path for the server container image.
ghcr.io/modernrelay/omnigraph-server.lateston real tag pushes.Confidence Score: 5/5
This looks safe to merge.
Important Files Changed
Reviews (2): Last reviewed commit: "review fixes: validate dispatch tag (exi..." | Re-trigger Greptile
Context used: