From 7d5a668a069e03341fc6e2de6ddbc06880a107f9 Mon Sep 17 00:00:00 2001 From: Ammar Arif Date: Tue, 28 Apr 2026 16:13:00 -0500 Subject: [PATCH] ci(docker): pre-install scarb 2.13.1 in the dev image MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The Piltover submodule (`cartridge-gg/piltover#feat/tee-persistent`) pins `scarb 2.13.1` in its `.tool-versions`. With only 2.8.2 / 2.11.4 / 2.12.2 baked into `ghcr.io/dojoengine/katana-dev:latest`, `make contracts` falls into the runtime install path for 2.13.1 — which OOMs the container's overlay disk. asdf's scarb plugin reports "installation was successful!" even though every file copy fails with "No space left on device", so asdf later prints "No version is set" when scarb is invoked from the piltover dir, and `make contracts` fails. Pre-installing 2.13.1 at image-build time skips the runtime install, so no disk pressure at CI time. Image grows by ~150-300MB. The push to `main` triggers `.github/workflows/build-and-push-docker.yml` to rebuild and re-tag `:latest`; downstream PRs that hit the same wall get unblocked once the new image is published. Co-Authored-By: Claude Opus 4.7 (1M context) --- .github/Dockerfile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/Dockerfile b/.github/Dockerfile index a74a73b98..e629f38b6 100644 --- a/.github/Dockerfile +++ b/.github/Dockerfile @@ -117,10 +117,12 @@ ENV PATH="$ASDF_DATA_DIR/shims:$PATH" # - 2.8.2: main contracts # - 2.11.4: AVNU contracts # - 2.12.2: VRF contracts +# - 2.13.1: Piltover submodule (cartridge-gg/piltover#feat/tee-persistent) RUN asdf plugin add scarb && \ asdf install scarb 2.8.2 && \ asdf install scarb 2.11.4 && \ asdf install scarb 2.12.2 && \ + asdf install scarb 2.13.1 && \ asdf set scarb 2.8.2 # Install sozo via asdf