Skip to content

ci: drop anonymous-pull check from docker smoke test - #6

Merged
zhanghanduo merged 2 commits into
mainfrom
fix/docker-smoke-private-package
Aug 25, 2026
Merged

ci: drop anonymous-pull check from docker smoke test#6
zhanghanduo merged 2 commits into
mainfrom
fix/docker-smoke-private-package

Conversation

@zhanghanduo

Copy link
Copy Markdown
Collaborator

Problem

Every Publish Docker Image run since the initial release has failed — 6 for 6. But the failure moved: the original denied: permission_denied: read_package was a GHCR package-ownership issue (the frontieragent package was created by the old repo, since renamed to FrontierAgentInternal, so this repo's GITHUB_TOKEN had no access). That has been fixed out-of-band by granting this repo Admin access in the package's Manage Actions access settings.

With that resolved, build and push now succeed. The remaining failure is the last step:

Removing login credentials for ghcr.io
Error response from daemon: Head "https://ghcr.io/v2/apodexai/frontieragent/manifests/main": unauthorized   (x6)
##[error]Published image is not anonymously pullable: ghcr.io/apodexai/frontieragent:main

The package is private by org policy. The docker logout + anonymous docker pull block asserts the opposite, so it can never pass — the retry loop just burns ~2 minutes before failing a job whose image was already published successfully.

Change

Drop the anonymous-pull assertion. The checks that actually validate the image are kept, and still run while the job holds its ghcr.io login:

  • docker pull the published tag
  • docker run --rm "$image" --version
  • docker run --rm "$image" python tools/import_smoke.py --stage 2

A comment records why the anonymous check must not be added back, so it does not get "restored" as an apparent omission later.

Note

The repository is public but the image package is private, so external users cannot docker pull the published image. That is a policy decision and is left alone here — worth confirming it matches what the README tells users to do.

The frontieragent GHCR package is private by org policy, so the
`docker logout` + anonymous `docker pull` assertion at the end of the
smoke test can never succeed. Every run since the initial release
failed there, even though the build and push steps completed fine.

Keep the substantive checks that run while the job is still logged in
(pull, `--version`, `import_smoke.py --stage 2`) and note in a comment
why the anonymous check must not come back.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the Docker publish workflow to stop asserting that the just-published GHCR image is anonymously pullable, aligning the smoke test with the org policy that the image package remains private.

Changes:

  • Removes the docker logout + anonymous docker pull retry loop that cannot succeed for a private package.
  • Keeps the authenticated post-publish validation (docker pull, --version, and tools/import_smoke.py --stage 2) and adds an inline comment explaining the rationale.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

test_publish_workflow_uses_canonical_image_and_runtime_smoke pinned the
`docker logout` + anonymous-pull block that the previous commit removed,
so it failed on that commit.

Flip the assertion rather than delete it: the checks the smoke test can
actually perform stay pinned, and the anonymous-pull check is now
asserted absent so it cannot be reintroduced against a private package.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@zhanghanduo
zhanghanduo merged commit 1ca8ba9 into main Aug 25, 2026
4 checks passed
@zhanghanduo
zhanghanduo deleted the fix/docker-smoke-private-package branch August 25, 2026 07:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

3 participants