1# Use a prebuilt Python image instead of base Ubuntu to speed up the build process, 2# since it has all the build dependencies we need for Micro and downloads much faster 3# than the install process. 4FROM python:3.9.0-buster 5 6LABEL maintainer="Pete Warden <petewarden@google.com>" 7 8RUN echo deb http://apt.llvm.org/buster/ llvm-toolchain-buster-12 main > /etc/apt/sources.list.d/llvm.list 9RUN wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add - 10 11RUN apt-get update 12 13RUN apt-get install -y zip xxd sudo 14 15RUN apt-get install -y clang-12 clang-format-12 16# Set clang-12 and clang-format-12 as the default to ensure that the pigweed 17# formatting scripts use the desired version. 18RUN ln -s /usr/bin/clang-12 /usr/bin/clang 19RUN ln -s /usr/bin/clang++-12 /usr/bin/clang++ 20RUN ln -s /usr/bin/clang-format-12 /usr/bin/clang-format 21 22RUN pip install six 23# Install Renode test dependencies 24RUN pip install pyyaml requests psutil robotframework==3.1 25 26# Install bazel and buildifier so that the bazel presubmit checks can be run 27# from the micro docker container and are consistent with the rest of the CI. 28COPY install/*.sh /install/ 29RUN /install/install_bazel.sh 30RUN /install/install_buildifier.sh 31