From 0a54ecc6dc98a835a1e1d392c4abbc7d697dd0e1 Mon Sep 17 00:00:00 2001 From: Kevin van Zonneveld Date: Wed, 21 Oct 2026 19:11:02 +0200 Subject: [PATCH 1/2] Require patched Node 24 for SDK tooling --- .github/workflows/ci.yml | 6 ++++-- Dockerfile | 13 +++++++------ 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 53648b6..beae564 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -23,7 +23,8 @@ jobs: - uses: actions/setup-node@v6 with: - node-version: '24' + node-version: '^24.22.1' + check-latest: true - name: Install Transloadit CLI run: npm install -g transloadit @@ -103,7 +104,8 @@ jobs: - uses: actions/setup-node@v6 with: - node-version: '24' + node-version: '^24.22.1' + check-latest: true - name: Install Transloadit CLI run: npm install -g transloadit diff --git a/Dockerfile b/Dockerfile index bca8d1d..80a002d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,6 +1,7 @@ # syntax=docker/dockerfile:1 ARG PYTHON_VERSION=3.14 +FROM node:24.22.1-bookworm-slim AS node FROM python:${PYTHON_VERSION}-slim AS base ENV DEBIAN_FRONTEND=noninteractive \ @@ -20,12 +21,12 @@ RUN apt-get update \ RUN git lfs install --system -# Install Node.js 24 (for Smart CDN parity tests) and supporting CLI tooling -RUN curl -fsSL https://deb.nodesource.com/setup_24.x | bash - \ - && apt-get update \ - && apt-get install -y --no-install-recommends nodejs \ - && npm install -g transloadit \ - && rm -rf /var/lib/apt/lists/* +# Use the patched official runtime for signature parity tooling. +COPY --from=node /usr/local/bin/node /usr/local/bin/node +COPY --from=node /usr/local/lib/node_modules/npm /usr/local/lib/node_modules/npm +RUN ln -s ../lib/node_modules/npm/bin/npm-cli.js /usr/local/bin/npm \ + && ln -s ../lib/node_modules/npm/bin/npx-cli.js /usr/local/bin/npx +RUN npm install -g transloadit # Install Poetry so we match the GitHub Actions toolchain RUN pip install --no-cache-dir --upgrade pip \ From df267955b22bd1ff50e3f82b2e22cf81dcdf3907 Mon Sep 17 00:00:00 2001 From: Kevin van Zonneveld Date: Wed, 21 Oct 2026 19:44:12 +0200 Subject: [PATCH 2/2] Explain retained development image utilities --- Dockerfile | 1 + 1 file changed, 1 insertion(+) diff --git a/Dockerfile b/Dockerfile index 80a002d..c5787cf 100644 --- a/Dockerfile +++ b/Dockerfile @@ -9,6 +9,7 @@ ENV DEBIAN_FRONTEND=noninteractive \ PYTHONDONTWRITEBYTECODE=1 \ POETRY_VIRTUALENVS_IN_PROJECT=true +# Keep the existing development utilities available to users of this image. RUN apt-get update \ && apt-get install -y --no-install-recommends \ curl \