diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 72851ea..7694d17 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: lfs: true - uses: actions/setup-node@v4 with: - node-version: 20 + node-version: "22.23.4" - run: npm install -g tsx - uses: ruby/setup-ruby@afeafc3d1ab54a631816aba4c914a0081c12ff2f with: diff --git a/Dockerfile b/Dockerfile index 26f9631..3e12343 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,7 @@ # syntax=docker/dockerfile:1 +FROM node:22.23.4-bookworm-slim AS node + FROM ruby:4.0 AS base RUN apt-get update \ @@ -10,10 +12,11 @@ RUN apt-get update \ ca-certificates \ && rm -rf /var/lib/apt/lists/* -# Install Node.js for parity checks -RUN curl -fsSL https://deb.nodesource.com/setup_22.x | bash - \ - && apt-get install -y --no-install-recommends nodejs \ - && npm install -g npm@latest \ - && rm -rf /var/lib/apt/lists/* +# Use the patched Node.js release for parity checks. +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 \ + && npm install -g npm@latest WORKDIR /workspace