blob: dee7f4a51831383ef5eb70e3ec701228e9198335 [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
9RUN apt-get update && \
10 apt-get install --no-install-recommends -y \
11 bc \
12 build-essential \
13 curl \
14 dos2unix \
15 git \
16 lib32stdc++6 \
17 mscgen \
18 p7zip-full \
19 python3 \
20 python3-pip \
21 tar \
22 unzip \
23 wget \
24 libxml2-utils \
25 zip && \
26 apt-get autoremove -y && \
27 apt-get autoclean -y && \
28 rm -rf /var/lib/apt/lists/*
29
30# Create build ARGs for installer files & versions
31ARG GCC=gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2
32
33# Including dependency folder
34ARG DEPENDENCIESFOLDER=dependenciesFiles
35ARG TOOLS_PATH=/opt
36ARG INSTALLER_PATH=/tmp/dependenciesFiles
37RUN mkdir -p ${INSTALLER_PATH}
38COPY dependenciesFiles/${GCC} ${INSTALLER_PATH}/${GCC}
39COPY dependenciesFiles/buildtools ${TOOLS_PATH}/buildtools
Jonatan Antoni5a9fb842021-06-22 18:20:29 +020040
41# install & setup gcc
42RUN mkdir -p ${TOOLS_PATH}
43WORKDIR ${TOOLS_PATH}
44RUN tar -xvf ${INSTALLER_PATH}/${GCC}
45ENV PATH=${PATH}:${TOOLS_PATH}/gcc-arm-none-eabi-10-2020-q4-major/bin
46ENV CI_GCC_TOOLCHAIN_ROOT=${TOOLS_PATH}/gcc-arm-none-eabi-10-2020-q4-major/bin
47WORKDIR /
48
49# install Python requirements
50COPY requirements.txt ${INSTALLER_PATH}/
Jonatan Antonie54ebc42021-07-14 12:27:42 +020051RUN python3 -m pip install -U --no-cache-dir pip && \
52 python3 -m pip install -U --no-cache-dir -r ${INSTALLER_PATH}/requirements.txt
Jonatan Antoni5a9fb842021-06-22 18:20:29 +020053
54# install buildtools
55RUN python3 -m pip install --no-cache-dir -r ${TOOLS_PATH}/buildtools/requirements.txt
56COPY rtebuild /root/.rtebuild
57ENV PATH=${PATH}:${TOOLS_PATH}/buildtools
58
Jonatan Antoni5a9fb842021-06-22 18:20:29 +020059# remove dependency folder
60RUN rm -rf ${INSTALLER_PATH}
61
62CMD ["bash"]