Skip to content

[Other] docker/build.sh leaves out tools/dsv41/*.py, so the image build stops at "installer tool missing: tools/dsv41/tune.py" #4082

Open

Description

@noonghunna

Area

[Other] (anything else, including setup and installation)

Desktop app, Terminal or source?

Docker

What happened

Building the image for v0.2.5 with the repo's own script stops in the terminal stage, at python3 /src/packaging/package_terminal.py:

#9 8.335 copying the application
#9 8.337 installer tool missing: tools/dsv41/tune.py
#9 ERROR: process "/bin/sh -c python3 /src/packaging/package_terminal.py --out /out --cache /cache  && ..." did not complete successfully: exit code: 1

Since b7958c0 (2026-10-24), packaging/package_terminal.py puts dsv41/pack_gguf, dsv41/smoke and dsv41/tune in INSTALLER_SCRIPTS. docker/build.sh says it stages "exactly what packaging/package_terminal.py copies", but it only takes ':(glob)tools/*.py' (line 68; the branch without git on line 71 takes tools/*.py). That glob doesn't reach tools/dsv41/, so the build context has no tools/dsv41/ and local_imports() exits on the first script it can't find. docker/build.sh on main (41cf05a) is the same.

The Docker images workflow runs the same docker/publish.sh → docker/build.sh, so a run for 0.2.4 or 0.2.5 would stop here too. ghcr.io has no 0.2.4 or 0.2.5 image yet (the newest tags are 0.2.3-*).

Adding the subfolder to both staging lines fixes it for me:

-  { git ls-files -z -- $paths ':(glob)tools/*.py'; } | tar --null -T - -cf - | tar -xf - -C "$ctx/terminal-src"
+  { git ls-files -z -- $paths ':(glob)tools/*.py' ':(glob)tools/dsv41/*.py'; } | tar --null -T - -cf - | tar -xf - -C "$ctx/terminal-src"
 ...
-  tar -cf - --exclude='__pycache__' $paths tools/*.py | tar -xf - -C "$ctx/terminal-src"
+  tar -cf - --exclude='__pycache__' $paths tools/*.py tools/dsv41/*.py | tar -xf - -C "$ctx/terminal-src"

With the first change, docker/publish.sh --release-tag v0.2.5 --flavors cuda13 --no-latest completes: the cuda13 image builds and its check prints strata 0.2.5 (build 0.1.50; python 3.12.15 …). I only tested the git branch (line 68).

tests/terminal/test_bundle_tools_paths.py checks that the bundle carries every by-path tool, but it doesn't look at what docker/build.sh stages, so this slipped past it.

Smallest steps or command that reproduce it

git clone --depth 1 --branch v0.2.5 https://github.com/Niko1221/Strata.git && cd Strata
sh docker/publish.sh --release-tag v0.2.5 --flavors cuda13 --image strata-test --no-latest

The engine package downloads and verifies fine (0.1.50-linux-x86_64-cuda-cuda13: signature and every file verified); the failure comes after, in the terminal stage.

Reproduction status

Reproduced locally

Strata version

v0.2.5 (tag → fa663fa); docker/build.sh unchanged on main 41cf05a

Graphics card, memory and system

Ubuntu 24.04, Docker 29.9.1. The build fails before any GPU is used.

Model, size and settings

not relevant (image build)

Logs

the snippet above.

Activity

  1. added a commit that references this issue on Oct 25, 2026
  2. volkertb commented on Oct 25, 2026

    @volkertb

    Same here, and the same fix works for another flavor: with both staging lines patched,
    docker/build.sh --flavor hip --engine …/0.1.50-linux-x86_64-hip-rx7900 --version 0.2.5
    builds and the image reports strata 0.2.5 (build 0.1.50 …). (Ubuntu , Docker .)

    On which releases are affected: b7958c0 is not in v0.2.4, so that tag's image build should still work;
    v0.2.4.1, v0.2.4.2 and v0.2.5 contain it (git merge-base --is-ancestor b7958c04 <tag>).

  3. noonghunna commented on Oct 25, 2026

    @noonghunna
    Author

    Thanks for checking, you're right: b7958c0 isn't in v0.2.4, so the v0.2.4 image should still build. The affected tags are v0.2.4.1, v0.2.4.2, v0.2.5 and now v0.2.6.

    docker/build.sh is unchanged in v0.2.6 and on main (both 4b9e05a). With the same change to the git ls-files line, docker/publish.sh --release-tag v0.2.6 --flavors cuda13 --no-latest completes and the image reports strata 0.2.6 (build 0.1.51 …).

  4. simlu commented on Oct 25, 2026

    @simlu

    Is this why the most recent builds don't have docker images published?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions