diff options
author | Thiago Marcos P. Santos <tmpsantos@gmail.com> | 2020-03-13 14:43:29 +0200 |
---|---|---|
committer | Thiago Marcos P. Santos <tmpsantos@gmail.com> | 2020-04-02 13:11:41 +0300 |
commit | b7728d222cbcdb3e522fc3e482e69101b0b95481 (patch) | |
tree | 33a07f0c715aa75199d51d84197cb8ade98be7e5 /scripts | |
parent | 7d26a16489bd763a1bb0aa63a841369b3634fba0 (diff) | |
download | qtlocation-mapboxgl-b7728d222cbcdb3e522fc3e482e69101b0b95481.tar.gz |
[build] Make the docker image smaller
It could be made even smaller by splitting Android and Linux
builds, but so far CircleCI is handling it fine.
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/ci/Dockerfile | 96 |
1 files changed, 52 insertions, 44 deletions
diff --git a/scripts/ci/Dockerfile b/scripts/ci/Dockerfile index 8234e80c64..381f503c51 100644 --- a/scripts/ci/Dockerfile +++ b/scripts/ci/Dockerfile @@ -10,69 +10,78 @@ COPY etc/apt/sources.list /etc/apt RUN set -eu \ && apt-get update \ - && apt-get dist-upgrade -y + && apt-get dist-upgrade -y \ + && apt-get autoremove --purge -y && apt-get clean # CI requirements RUN set -eu && apt-get install -y \ - ca-certificates \ - git \ - gzip \ - ssh \ - tar + ca-certificates \ + git \ + gzip \ + ssh \ + tar \ + && apt-get autoremove --purge -y && apt-get clean # Base dependencies RUN set -eu && apt-get install -y \ - ccache \ - clang-8 \ - clang-format-8 \ - clang-tidy-8 \ - cmake \ - fonts-noto \ - g++-8 \ - libc++-8-dev \ - libc++abi-8-dev \ - mesa-common-dev \ - ninja-build \ - nodejs \ - npm \ - pkg-config \ - python3-pip \ - software-properties-common \ - valgrind \ - xvfb + ccache \ + clang-8 \ + clang-format-8 \ + clang-tidy-8 \ + cmake \ + fonts-noto \ + g++-8 \ + libc++-8-dev \ + libc++abi-8-dev \ + mesa-common-dev \ + ninja-build \ + nodejs \ + npm \ + pkg-config \ + python3-pip \ + python3-requests \ + python3-github \ + software-properties-common \ + valgrind \ + xvfb \ + && apt-get autoremove --purge -y && apt-get clean RUN pip3 install cmake-format==0.5.5 # Linux dependencies RUN set -eu && apt-get install -y \ - libcurl4-openssl-dev \ - libgl1-mesa-dev \ - libgles2-mesa-dev \ - libglfw3-dev \ - libicu-dev \ - libjpeg-turbo8-dev \ - libpng-dev \ - libuv1-dev \ - zlib1g-dev + libcurl4-openssl-dev \ + libgl1-mesa-dev \ + libgles2-mesa-dev \ + libglfw3-dev \ + libicu-dev \ + libjpeg-turbo8-dev \ + libpng-dev \ + libuv1-dev \ + zlib1g-dev \ + && apt-get autoremove --purge -y && apt-get clean # Qt dependencies RUN set -eu && apt-get install -y \ - qdoc-qt5 \ - qt5-default + qdoc-qt5 \ + qt5-default \ + && apt-get autoremove --purge -y && apt-get clean # Android dependencies RUN set -eu && apt-get install -y \ - coreutils \ - curl \ - openjdk-8-jdk-headless \ - unzip + coreutils \ + curl \ + openjdk-8-jdk-headless \ + unzip \ + && apt-get autoremove --purge -y && apt-get clean # Install old compilers RUN set -eu \ && apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 1E9377A2BA9EF27F \ && add-apt-repository "deb http://ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu xenial main" \ && add-apt-repository "deb http://us.archive.ubuntu.com/ubuntu/ xenial main universe" \ - && apt-get install -y g++-5 + && apt-get install -y g++-5 \ + && apt-get autoremove --purge -y && apt-get clean # Install Android NDK RUN set -eu \ @@ -107,10 +116,9 @@ RUN set -eu \ RUN set -eu \ && echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] http://packages.cloud.google.com/apt cloud-sdk main" | tee -a /etc/apt/sources.list.d/google-cloud-sdk.list \ && curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key --keyring /usr/share/keyrings/cloud.google.gpg add - \ - && apt-get update -y && apt-get install google-cloud-sdk -y + && apt-get update -y \ + && apt-get install google-cloud-sdk -y \ + && apt-get autoremove --purge -y && apt-get clean # Configure ccache RUN set -eu && /usr/sbin/update-ccache-symlinks - -# Cleanup -RUN set -eu && apt-get clean |