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

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

Build:
Build:
LAST BUILD BRANCH: v2-build-on-locked-runtime
DEFAULT BRANCH: main
Ran 13 Oct 2026 12:47AM UTC
Jobs 1
Files 333
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

13 Oct 2026 12:43AM UTC coverage: 57.727% (+0.001%) from 57.726%
38328640402

push

github

web-flow
Carry the project's files in the image a deploy or astro package generates (#2302)

* Carry the project's files in the image a deploy or astro package generates

A generated build's context held only the generated requirements.txt and
packages.txt, so the image a manifest deploy shipped had none of the
project's own code: no include/, no plugins/, nothing dags/ imports. A deploy
sends dags/ alone beside the image, so on Astro a DAG importing include
failed (here, blueprint's registry swallowed the ImportError and reported
"No blueprints found").

ForManifest (deploy, astro package) now sets Request.ProjectFiles, and a
generated build copies the project into its context, which the runtime
image's ONBUILD COPY . . lays down after both installs. Version control,
virtualenvs, .astro and caches are left out, the project's own
requirements.txt and packages.txt never replace the generated ones, and a
project .dockerignore applies to the rest without dropping them. Local
Docker mode (ForLocalManifest) is unchanged: it runs the project mounted.

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

* Address review: keep secrets out, follow symlinks, hash the files into package tags

- The plaintext .env and the per-machine files Astro tools write
  (imagebuild.ShippedImageIgnores, mirroring scaffold's .dockerignore rules)
  never ship, and come after the project's .dockerignore so no ! line brings
  them back. A root-module test holds the list to cover scaffold's.
- The project's .dockerignore applies during the walk (moby/patternmatcher),
  so an excluded directory is never read or copied.
- Symlinks are carried as what they point at: a symlinked project root is
  walked, a link out of the project no longer dangles in the image, Windows
  needs no symlink privilege, loops and dangling links are skipped, and a file
  vanishing mid-walk is skipped.
- astro package's content-addressed tag includes a digest of the carried
  files (imagebuild.ProjectFilesDigest), so ed... (continued)

6 of 8 new or added lines in 1 file covered. (75.0%)

40187 of 69616 relevant lines covered (57.73%)

233.68 hits per line

Uncovered Changes

Lines Coverage ∆ File
2
88.38
-0.55% internal/pack/astro.go
Jobs
ID Job ID Ran Files Coverage
1 38328640402.1 13 Oct 2026 12:47AM UTC 333
57.73
GitHub Action Run
Source Files on build 38328640402
  • Tree
  • List 333
  • Changed 1
  • Source Changed 1
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #38328640402
  • 24843e34 on github
  • Prev Build on v2 (#38326292955)
  • Next Build on v2 (#38332993052)
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