• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

astronomer / astro-cli / 39053272898
61%
main: 45%

Build:
Build:
LAST BUILD BRANCH: v2-runtime-package-group
DEFAULT BRANCH: main
Ran 17 Oct 2026 05:24PM UTC
Jobs 1
Files 336
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

17 Oct 2026 05:19PM UTC coverage: 60.011% (+2.0%) from 58.042%
39053272898

push

github

web-flow
Push images through pkg/imagebuild and delete internal/imagepush (#2327)

* Push images through pkg/imagebuild and delete internal/imagepush

Every image action now runs in pkg/imagebuild on one engine runner.
imagebuild.Engine (the Commander, Bin and Env a build takes) logs in with
the secret on stdin, tags, pushes (returning the pushed digest: Docker's
RepoDigests, or podman's --digestfile), untags and reads labels, and maps
a registry 403 to ErrPushForbidden, whose text is the old ErrImagePush403's.

The Astro manifest deploy pushes and reads labels on the engine it built
on; astro remote deploy resolves one engine for its base-registry login,
build and push; the APC deploy and the APC registry login run on
containercfg.ImageEngine. So a project-level container.binary and a podman
machine's connection env now reach the login and the push too, not just
the build. The Docker Engine API push and its CLI fallback are replaced by
the engine CLI's push, the old fallback's path.

internal/imagepush, its mocks, its .mockery.yaml and archlint entries go;
go mod tidy drops docker/cli with it.

Co-Authored-By: Claude <noreply@anthropic.com>

* Read a refused push from the engine's output, not the reference

Review fixes for the imagebuild push:

- A 403 is read from what the engine said (its stderr and exit), with the
  pushed reference cut out, so a tag such as deploy-403 is not a refusal.
- A login before a push that the registry refuses (401, unauthorized,
  incorrect username or password, authentication required) is
  ErrPushForbidden too, wrapping the engine's failure.
- ErrPushForbidden's text is platform-neutral; the CLI's advice (docker
  logout, the snapshotter, the support article) moves to
  deploybuild.ExplainPush, which every deploy's push error goes through,
  so the message a user sees is unchanged.
- The Astro manifest deploy sends the push's progress to in.Progress, not
  stdout, so --output json's stdout carries the result alone.
- APC 1.0+ ... (continued)

90 of 105 new or added lines in 7 files covered. (85.71%)

40321 of 67189 relevant lines covered (60.01%)

292.82 hits per line

Uncovered Changes

Lines Coverage ∆ File
6
0.0
0.0% internal/containercfg/containercfg.go
6
80.8
-2.53% internal/platform/apc/auth/auth.go
3
90.1
0.08% internal/platform/apc/deploy/deploy.go
Jobs
ID Job ID Ran Files Coverage
1 39053272898.1 17 Oct 2026 05:24PM UTC 336
60.01
GitHub Action Run
Source Files on build 39053272898
  • Tree
  • List 336
  • Changed 6
  • Source Changed 6
  • Coverage Changed 6
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #39053272898
  • aa269958 on github
  • Prev Build on v2 (#39048627102)
  • Next Build on v2 (#39054407113)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc