fix ci-base: install Node 20 via binary tarball instead of nodesource apt

nodesource setup_20.x on Ubuntu 24.04 installs Ubuntu's nodejs 18 (no npm)
instead of Node 20. Binary tarball is reliable and includes npm.
This commit is contained in:
Will Anderson
2026-05-04 15:48:12 -05:00
parent baae9b289a
commit 627d448f6f
+7 -5
View File
@@ -29,11 +29,13 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
zstd \
&& rm -rf /var/lib/apt/lists/*
# Node.js 20 LTS — required to execute Forgejo JS actions (checkout, upload-artifact, cache, etc.)
RUN curl -fsSL https://deb.nodesource.com/setup_20.x | bash - \
&& apt-get install -y nodejs \
&& npm install -g yarn \
&& rm -rf /var/lib/apt/lists/*
# Node.js 20 LTS via binary tarball (nodesource apt repo is unreliable on Ubuntu 24.04)
RUN NODE_VERSION=20.19.1 \
&& curl -fsSL "https://nodejs.org/dist/v${NODE_VERSION}/node-v${NODE_VERSION}-linux-x64.tar.xz" \
| tar -xJ -C /usr/local --strip-components=1 \
&& node --version \
&& npm --version \
&& npm install -g yarn
# Python 3 + pip + venv
RUN apt-get update && apt-get install -y --no-install-recommends \