ci(publish): dispatch full image-lane smoke after GHCR push#18
Draft
PipDscvr wants to merge 1 commit into
Draft
Conversation
After the publish job pushes a new GHCR tag, dispatch a repository_dispatch event so the integration smoke environment can run the full release-required suite against the just-pushed image. The existing in-workflow smoke only covers ingest/search; the dispatched suite adds MCP, framework adapters, host-tools E2E, hygiene, and docs-contract coverage. The dispatch target and PAT are sourced from repository variables/secrets (IMAGE_SMOKE_REPO + IMAGE_SMOKE_DISPATCH_TOKEN) so this workflow file does not hardcode an internal repository name. Fails closed when either is unset. Fires only after a fresh push (retag_latest_only=false) so a retag of an already-validated digest does not burn CI cycles.
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.
Summary
After publish-core-docker.yml pushes a new GHCR tag, this dispatches a
repository_dispatch: core-image-publishedevent so a downstream environment can run the full release-required integration suite against the just-pushed image. Adds coverage for MCP, framework adapters, host-tools E2E, hygiene, and docs-contract on top of the existing in-workflow ingest/search smoke.Fires only after a fresh push (
retag_latest_only=false); a retag of an already-validated digest is skipped.Wiring
The downstream listener and its preflight live elsewhere; this PR is the sender only. Repository configuration required before the dispatch can succeed:
IMAGE_SMOKE_DISPATCH_TOKEN— fine-grained PAT withactions: writeon the target repo.IMAGE_SMOKE_REPO—owner/nameof the listener.The workflow file does not hardcode either value; both are pulled from repo settings. If either is unset the step exits non-zero with a clear error so a missed dispatch is loud, not silent.
Payload
The digest is read from
docker manifest inspectafter the push so the listener can pin to a specific image content if it wants to.Test plan
pnpm run repo-hygienepasses.pnpm run security-compliancepasses.