From 617bc74adcfdeea418698f2e1b3b8715a6252b39 Mon Sep 17 00:00:00 2001 From: rob Date: Mon, 20 Jul 2026 22:40:29 +0200 Subject: [PATCH] fix(docker): don't COPY the empty include/ dir in simplepool image The Dockerfile.simplepool build stage did 'COPY include/ ./include/', but include/ is an empty directory. Git can't track empty dirs, so it's absent in a fresh checkout (CI), and buildx failed with '"/include": not found'. No header lives in include/ (all are under src/), and the Makefile's -Iinclude search path tolerates the directory's absence, so the copy is simply dropped. --- deploy/docker/Dockerfile.simplepool | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/deploy/docker/Dockerfile.simplepool b/deploy/docker/Dockerfile.simplepool index 1eb4d1c..6bdc506 100644 --- a/deploy/docker/Dockerfile.simplepool +++ b/deploy/docker/Dockerfile.simplepool @@ -14,7 +14,10 @@ RUN apt-get update && apt-get install -y --no-install-recommends \ && rm -rf /var/lib/apt/lists/* WORKDIR /src COPY Makefile ./ -COPY include/ ./include/ +# NOTE: include/ is intentionally not copied — it's an empty directory (git +# can't track empty dirs, so it's absent in a fresh checkout) and no header +# lives there; all headers are under src/. The Makefile's -Iinclude search +# path harmlessly tolerates its absence. COPY src/ ./src/ # The Makefile does `include tests/*.mk` at the top level, so those files # must be present for make to parse — we only build the main binary target