From ac5a842081d9571989d169e805a429936443571e Mon Sep 17 00:00:00 2001 From: pat-s Date: Tue, 30 Jun 2026 14:14:54 +0200 Subject: [PATCH] fix(patches): build-one image bincraft v4.4.0 + ship patch registry The targeted rebuild Dockerfile still pinned bincraft v4.2.1 (predates the patches argument), so build-one.R's patches= call would error. Bump to v4.4.0 to match the .crow workflows. Also COPY the patch registry into the image so patches='local/patches' resolves at /work/local/patches instead of silently no-opping. --- docker/build-one.Dockerfile | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/docker/build-one.Dockerfile b/docker/build-one.Dockerfile index 2cd4d51..2c1af97 100644 --- a/docker/build-one.Dockerfile +++ b/docker/build-one.Dockerfile @@ -16,6 +16,9 @@ ARG CACHEBUST WORKDIR /work COPY build-one.R /work/build-one.R +# Ship the patch registry so build-one.R's `patches = "local/patches"` resolves +# (build context is `local/`, CWD is /work). +COPY patches /work/local/patches RUN --mount=type=secret,id=b2_access,required=true \ --mount=type=secret,id=b2_secret,required=true \ @@ -37,7 +40,7 @@ RUN --mount=type=secret,id=b2_access,required=true \ echo "No working virtual display; building without xvfb" >&2; \ fi; \ run_build() { if [ "$USE_XVFB" = 1 ]; then $XVFB -a $XVFB_ARGS -- "$@"; else "$@"; fi; }; \ - ensure_bincraft() { "$1" -q -e 'if (!requireNamespace("bincraft", quietly = TRUE) || packageVersion("bincraft") != "4.2.1") pak::pak("git::https://codefloe.com/rpkgs/bincraft.git@v4.2.1")'; }; \ + ensure_bincraft() { "$1" -q -e 'if (!requireNamespace("bincraft", quietly = TRUE) || packageVersion("bincraft") != "4.4.0") pak::pak("git::https://codefloe.com/rpkgs/bincraft.git@v4.4.0")'; }; \ PRIMARY_MINOR=$(echo "$R_VERSION" | cut -d. -f1-2); \ seen=" $PRIMARY_MINOR "; \ prc=0; failed=""; \ -- 2.54.0