dockerfile.gnu 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. # 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.
  4. ARG DOCKER_REGISTRY
  5. FROM ${DOCKER_REGISTRY}/ubuntu:focal
  6. # install packages from official Ubuntu repo
  7. ENV DEBIAN_FRONTEND=noninteractive
  8. # hadolint ignore=DL3008
  9. RUN 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. # Create build ARGs for installer files & versions
  30. ARG GCC=gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2
  31. # Including dependency folder
  32. ARG DEPENDENCIESFOLDER=dependenciesFiles
  33. ARG TOOLS_PATH=/opt
  34. ARG INSTALLER_PATH=/tmp/dependenciesFiles
  35. RUN mkdir -p ${INSTALLER_PATH}
  36. COPY dependenciesFiles/${GCC} ${INSTALLER_PATH}/${GCC}
  37. COPY dependenciesFiles/buildtools ${TOOLS_PATH}/buildtools
  38. # install & setup gcc
  39. RUN mkdir -p ${TOOLS_PATH}
  40. WORKDIR ${TOOLS_PATH}
  41. RUN tar -xvf ${INSTALLER_PATH}/${GCC}
  42. ENV PATH=${PATH}:${TOOLS_PATH}/gcc-arm-none-eabi-10-2020-q4-major/bin
  43. ENV CI_GCC_TOOLCHAIN_ROOT=${TOOLS_PATH}/gcc-arm-none-eabi-10-2020-q4-major/bin
  44. WORKDIR /
  45. # install Python requirements
  46. COPY requirements.txt ${INSTALLER_PATH}/
  47. # hadolint ignore=DL3013
  48. RUN python3 -m pip install -U --no-cache-dir pip && \
  49. python3 -m pip install -U --no-cache-dir -r ${INSTALLER_PATH}/requirements.txt
  50. # install buildtools
  51. RUN python3 -m pip install --no-cache-dir -r ${TOOLS_PATH}/buildtools/requirements.txt
  52. COPY rtebuild /root/.rtebuild
  53. ENV PATH=${PATH}:${TOOLS_PATH}/buildtools
  54. # remove dependency folder
  55. RUN rm -rf ${INSTALLER_PATH}
  56. CMD ["bash"]