Auto merge of #123981 - Kobzol:update-nodejs, r=Mark-Simulacrum

CI: add script for installing NodeJS and update it to v20

I centralized the installation on a single place to make it simple to update the NodeJS version across the board.

Fixes: https://github.com/rust-lang/rust/issues/123965

r? `@Mark-Simulacrum`
This commit is contained in:
bors 2024-04-21 01:06:10 +00:00
commit 426a698606
4 changed files with 20 additions and 8 deletions

View File

@ -21,10 +21,12 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
mingw-w64 \ mingw-w64 \
&& rm -rf /var/lib/apt/lists/* && rm -rf /var/lib/apt/lists/*
RUN curl -sL https://nodejs.org/dist/v16.9.0/node-v16.9.0-linux-x64.tar.xz | tar -xJ
ENV PATH="/node-v16.9.0-linux-x64/bin:${PATH}"
ENV RUST_CONFIGURE_ARGS="--set rust.validate-mir-opts=3" ENV RUST_CONFIGURE_ARGS="--set rust.validate-mir-opts=3"
COPY scripts/nodejs.sh /scripts/
RUN sh /scripts/nodejs.sh /node
ENV PATH="/node/bin:${PATH}"
# Install es-check # Install es-check
# Pin its version to prevent unrelated CI failures due to future es-check versions. # Pin its version to prevent unrelated CI failures due to future es-check versions.
RUN npm install es-check@6.1.1 eslint@8.6.0 -g RUN npm install es-check@6.1.1 eslint@8.6.0 -g

View File

@ -28,8 +28,9 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
qemu-system-x86 \ qemu-system-x86 \
&& rm -rf /var/lib/apt/lists/* && rm -rf /var/lib/apt/lists/*
RUN curl -sL https://nodejs.org/dist/v18.12.0/node-v18.12.0-linux-x64.tar.xz | \ COPY scripts/nodejs.sh /scripts/
tar -xJ RUN sh /scripts/nodejs.sh /node
ENV PATH="/node/bin:${PATH}"
WORKDIR /build/ WORKDIR /build/
COPY scripts/musl-toolchain.sh /build/ COPY scripts/musl-toolchain.sh /build/
@ -45,7 +46,6 @@ ENV WASI_SDK_PATH=/wasi-sdk-22.0
ENV RUST_CONFIGURE_ARGS \ ENV RUST_CONFIGURE_ARGS \
--musl-root-x86_64=/usr/local/x86_64-linux-musl \ --musl-root-x86_64=/usr/local/x86_64-linux-musl \
--set build.nodejs=/node-v18.12.0-linux-x64/bin/node \
--set rust.lld --set rust.lld
# Some run-make tests have assertions about code size, and enabling debug # Some run-make tests have assertions about code size, and enabling debug

View File

@ -72,9 +72,9 @@ ENV GCC_EXEC_PREFIX="/usr/lib/gcc/"
COPY host-x86_64/x86_64-gnu-tools/checktools.sh /tmp/ COPY host-x86_64/x86_64-gnu-tools/checktools.sh /tmp/
RUN curl -sL https://nodejs.org/dist/v14.20.0/node-v14.20.0-linux-x64.tar.xz | tar -xJ COPY scripts/nodejs.sh /scripts/
ENV NODE_FOLDER=/node-v14.20.0-linux-x64/bin RUN sh /scripts/nodejs.sh /node
ENV PATH="$NODE_FOLDER:${PATH}" ENV PATH="/node/bin:${PATH}"
COPY host-x86_64/x86_64-gnu-tools/browser-ui-test.version /tmp/ COPY host-x86_64/x86_64-gnu-tools/browser-ui-test.version /tmp/

View File

@ -0,0 +1,10 @@
#!/bin/sh
set -ex
NODEJS_VERSION=v20.12.2
INSTALL_PATH=${1:-/node}
url="https://nodejs.org/dist/${NODEJS_VERSION}/node-${NODEJS_VERSION}-linux-x64.tar.xz"
curl -sL "$url" | tar -xJ
mv node-${NODEJS_VERSION}-linux-x64 "${INSTALL_PATH}"