48 lines
1.5 KiB
Docker
48 lines
1.5 KiB
Docker
# Note: when the rust version is changed also modify
|
|
# ci/rust-version.sh to pick up the new image tag
|
|
FROM rust:1.58.1
|
|
|
|
# Add Google Protocol Buffers for Libra's metrics library.
|
|
ENV PROTOC_VERSION 3.8.0
|
|
ENV PROTOC_ZIP protoc-$PROTOC_VERSION-linux-x86_64.zip
|
|
|
|
RUN set -x \
|
|
&& apt update \
|
|
&& apt-get install apt-transport-https \
|
|
&& echo deb https://apt.buildkite.com/buildkite-agent stable main > /etc/apt/sources.list.d/buildkite-agent.list \
|
|
&& apt-key adv --no-tty --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 32A37959C2FA5C3C99EFBC32A79206696452D198 \
|
|
&& curl -fsSL https://deb.nodesource.com/setup_current.x | bash - \
|
|
&& apt update \
|
|
&& apt install -y \
|
|
buildkite-agent \
|
|
clang \
|
|
cmake \
|
|
lcov \
|
|
libudev-dev \
|
|
mscgen \
|
|
nodejs \
|
|
net-tools \
|
|
rsync \
|
|
sudo \
|
|
golang \
|
|
unzip \
|
|
\
|
|
&& apt remove -y libcurl4-openssl-dev \
|
|
&& rm -rf /var/lib/apt/lists/* \
|
|
&& node --version \
|
|
&& npm --version \
|
|
&& rustup component add rustfmt \
|
|
&& rustup component add clippy \
|
|
&& rustup target add wasm32-unknown-unknown \
|
|
&& cargo install cargo-audit \
|
|
&& cargo install mdbook \
|
|
&& cargo install mdbook-linkcheck \
|
|
&& cargo install svgbob_cli \
|
|
&& cargo install wasm-pack \
|
|
&& rustc --version \
|
|
&& cargo --version \
|
|
&& curl -OL https://github.com/google/protobuf/releases/download/v$PROTOC_VERSION/$PROTOC_ZIP \
|
|
&& unzip -o $PROTOC_ZIP -d /usr/local bin/protoc \
|
|
&& unzip -o $PROTOC_ZIP -d /usr/local include/* \
|
|
&& rm -f $PROTOC_ZIP
|