blob: 9c8e13e35f4586285e56e50c467de198d06f91da [file] [log] [blame]
Jonatan Antoni5a9fb842021-06-22 18:20:29 +02001# Due to bandwidth limitation, we need to keep the base image into our
2# Artifactory Docker Registry. Because we have more than one registry,
3# we need to set during build time which Artifactory Docker Registry to use.
4ARG DOCKER_REGISTRY
5FROM ${DOCKER_REGISTRY}/ubuntu:focal
6
7# install packages from official Ubuntu repo
8ENV DEBIAN_FRONTEND=noninteractive
Jonatan Antonib5d07f02021-07-14 12:50:57 +02009# hadolint ignore=DL3008
Jonatan Antoni5a9fb842021-06-22 18:20:29 +020010RUN apt-get update && \
11 apt-get install --no-install-recommends -y \
12 bc \
13 build-essential \
14 curl \
15 dos2unix \
16 git \
17 lib32stdc++6 \
18 mscgen \
19 p7zip-full \
20 python3 \
21 python3-pip \
22 tar \
23 unzip \
24 wget \
25 libxml2-utils \
26 zip && \
27 apt-get autoremove -y && \
28 apt-get autoclean -y && \
29 rm -rf /var/lib/apt/lists/*
30
31# Create build ARGs for installer files & versions
32ARG GCC=gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2
33
34# Including dependency folder
35ARG DEPENDENCIESFOLDER=dependenciesFiles
36ARG TOOLS_PATH=/opt
37ARG INSTALLER_PATH=/tmp/dependenciesFiles
38RUN mkdir -p ${INSTALLER_PATH}
39COPY dependenciesFiles/${GCC} ${INSTALLER_PATH}/${GCC}
40COPY dependenciesFiles/buildtools ${TOOLS_PATH}/buildtools
Jonatan Antoni5a9fb842021-06-22 18:20:29 +020041
42# install & setup gcc
43RUN mkdir -p ${TOOLS_PATH}
44WORKDIR ${TOOLS_PATH}
45RUN tar -xvf ${INSTALLER_PATH}/${GCC}
46ENV PATH=${PATH}:${TOOLS_PATH}/gcc-arm-none-eabi-10-2020-q4-major/bin
47ENV CI_GCC_TOOLCHAIN_ROOT=${TOOLS_PATH}/gcc-arm-none-eabi-10-2020-q4-major/bin
48WORKDIR /
49
50# install Python requirements
51COPY requirements.txt ${INSTALLER_PATH}/
Jonatan Antonib5d07f02021-07-14 12:50:57 +020052# hadolint ignore=DL3013
Jonatan Antonie54ebc42021-07-14 12:27:42 +020053RUN python3 -m pip install -U --no-cache-dir pip && \
54 python3 -m pip install -U --no-cache-dir -r ${INSTALLER_PATH}/requirements.txt
Jonatan Antoni5a9fb842021-06-22 18:20:29 +020055
56# install buildtools
57RUN python3 -m pip install --no-cache-dir -r ${TOOLS_PATH}/buildtools/requirements.txt
58COPY rtebuild /root/.rtebuild
59ENV PATH=${PATH}:${TOOLS_PATH}/buildtools
60
Jonatan Antoni5a9fb842021-06-22 18:20:29 +020061# remove dependency folder
62RUN rm -rf ${INSTALLER_PATH}
63
64CMD ["bash"]