diff --git a/ci/docker/Dockerfile b/ci/docker/Dockerfile index fa801cf124314f..770e8c3f3dcc4d 100644 --- a/ci/docker/Dockerfile +++ b/ci/docker/Dockerfile @@ -1,12 +1,13 @@ -FROM ubuntu:20.04 +FROM ubuntu:22.04 ARG \ RUST_VERSION= \ RUST_NIGHTLY_VERSION= \ GOLANG_VERSION=1.21.3 \ - NODE_MAJOR=18 \ + NODE_MAJOR=22 \ SCCACHE_VERSION=v0.8.1 \ - GRCOV_VERSION=v0.8.18 + GRCOV_VERSION=v0.8.19 \ + LLVM_VERSION=18 SHELL ["/bin/bash", "-o", "pipefail", "-c"] @@ -23,6 +24,9 @@ ENV \ CARGO_HOME=/usr/local/cargo \ PATH="$PATH:/usr/local/cargo/bin" +# llvm +ENV PATH="/usr/lib/llvm-${LLVM_VERSION}/bin:$PATH" + RUN \ if [ -z "$RUST_VERSION" ]; then echo "ERROR: The RUST_VERSION argument is required!" && exit 1; fi && \ if [ -z "$RUST_NIGHTLY_VERSION" ]; then echo "ERROR: The RUST_NIGHTLY_VERSION argument is required!" && exit 1; fi && \ @@ -39,7 +43,6 @@ RUN \ ca-certificates \ curl \ gnupg \ - lld \ cmake \ # docs mscgen \ @@ -48,13 +51,18 @@ RUN \ libudev-dev \ pkg-config \ zlib1g-dev \ - llvm \ - clang \ cmake \ make \ libprotobuf-dev \ protobuf-compiler \ && \ + # llvm + apt install lsb-release wget software-properties-common gnupg -y && \ + wget https://apt.llvm.org/llvm.sh && \ + chmod u+x llvm.sh && \ + ./llvm.sh $LLVM_VERSION && \ + rm ./llvm.sh && \ + clang --version && \ # buildkite curl -fsSL https://keys.openpgp.org/vks/v1/by-fingerprint/32A37959C2FA5C3C99EFBC32A79206696452D198 | gpg --dearmor -o /usr/share/keyrings/buildkite-agent-archive-keyring.gpg && \ echo "deb [signed-by=/usr/share/keyrings/buildkite-agent-archive-keyring.gpg] https://apt.buildkite.com/buildkite-agent stable main" | tee /etc/apt/sources.list.d/buildkite-agent.list && \