diff options
author | Ivan Komissarov <ABBAPOH@gmail.com> | 2020-09-10 18:16:33 +0200 |
---|---|---|
committer | Ivan Komissarov <ABBAPOH@gmail.com> | 2020-09-14 14:32:10 +0000 |
commit | 018194f4a832b406999762fdac3417dfbcb9b9cb (patch) | |
tree | f2da37eee53de5a550c8e60fd8b838bf29b956d3 /docker | |
parent | 39e8a5773efadb653da2f59a8f758b697cecf569 (diff) | |
download | qbs-018194f4a832b406999762fdac3417dfbcb9b9cb.tar.gz |
Upgrade linux images to Ubuntu 20.04
Change-Id: I4dcfbe846f7847874908ed8ad84ac615a5a739c1
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Diffstat (limited to 'docker')
-rwxr-xr-x | docker/bionic/entrypoint.sh | 96 | ||||
-rw-r--r-- | docker/focal/Dockerfile (renamed from docker/bionic/Dockerfile) | 10 | ||||
-rw-r--r-- | docker/focal/test-android.Dockerfile (renamed from docker/bionic/test-android.Dockerfile) | 6 | ||||
-rw-r--r-- | docker/focal/test-baremetal.Dockerfile | 2 |
4 files changed, 10 insertions, 104 deletions
diff --git a/docker/bionic/entrypoint.sh b/docker/bionic/entrypoint.sh deleted file mode 100755 index 40bc5acb9..000000000 --- a/docker/bionic/entrypoint.sh +++ /dev/null @@ -1,96 +0,0 @@ -#!/usr/bin/env bash -set -e - -############################################################################# -## -## Copyright (C) 2019 Richard Weickelt <richard@weickelt.de> -## Contact: https://www.qt.io/licensing/ -## -## This file is part of Qbs. -## -## $QT_BEGIN_LICENSE:LGPL$ -## Commercial License Usage -## Licensees holding valid commercial Qt licenses may use this file in -## accordance with the commercial license agreement provided with the -## Software or, alternatively, in accordance with the terms contained in -## a written agreement between you and The Qt Company. For licensing terms -## and conditions see https://www.qt.io/terms-conditions. For further -## information use the contact form at https://www.qt.io/contact-us. -## -## GNU Lesser General Public License Usage -## Alternatively, this file may be used under the terms of the GNU Lesser -## General Public License version 3 as published by the Free Software -## Foundation and appearing in the file LICENSE.LGPL3 included in the -## packaging of this file. Please review the following information to -## ensure the GNU Lesser General Public License version 3 requirements -## will be met: https://www.gnu.org/licenses/lgpl-3.0.html. -## -## GNU General Public License Usage -## Alternatively, this file may be used under the terms of the GNU -## General Public License version 2.0 or (at your option) the GNU General -## Public license version 3 or any later version approved by the KDE Free -## Qt Foundation. The licenses are as published by the Free Software -## Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 -## included in the packaging of this file. Please review the following -## information to ensure the GNU General Public License requirements will -## be met: https://www.gnu.org/licenses/gpl-2.0.html and -## https://www.gnu.org/licenses/gpl-3.0.html. -## -## $QT_END_LICENSE$ -## -############################################################################# - -# -# Entrypoint script when starting the container. The script checks the current -# working directory and changes the uid/gid of developer/users to match whatever -# is found in the working directory. This is useful to match the user and group -# of mounted volumes into the container - -# -# If not root, re-run script as root to fix ids -# -if [ "$(id -u)" != "0" ]; then - exec gosu root /sbin/entrypoint.sh "$@" -fi - -# -# Try to determine the uid of the working directory and adjust the current -# user's uid/gid accordingly. -# -USER_GID=${USER_GID:-$(stat -c "%g" .)} -USER_UID=${USER_UID:-$(stat -c "%u" .)} -USER_NAME=${USER_NAME:-devel} -USER_GROUP=${USER_GROUP:-devel} -EXEC="" -export HOME=/home/${USER_NAME} - -# -# This is a problem on Linux hosts when we mount a folder from the -# user file system and write artifacts into that. Thus, we downgrade -# the current user and make sure that the uid and gid matches the one -# of the mounted project folder. -# -# This work-around is not needed on Windows hosts as Windows doesn't -# have such a concept. -# -if [ "${USER_UID}" != "0" ]; then - if [ "$(id -u ${USER_NAME})" != "${USER_UID}" ]; then - usermod -o -u ${USER_UID} ${USER_NAME} - # After changing the user's uid, all files in user's home directory - # automatically get the new uid. - fi - current_gid=$(id -g ${USER_NAME}) - if [ "$(id -g ${USER_NAME})" != "${USER_GID}" ]; then - groupmod -o -g ${USER_GID} ${USER_GROUP} - # Set the new gid on all files in the home directory that still have the - # old gid. - find /home/${USER_NAME} -gid "${current_gid}" ! -type l -exec chgrp ${USER_GID} {} \; - fi -fi -EXEC="exec gosu ${USER_NAME}:${USER_GROUP}" - -if [ -z "$1" ]; then - ${EXEC} bash -l -else - ${EXEC} bash -l -c "$*" -fi diff --git a/docker/bionic/Dockerfile b/docker/focal/Dockerfile index 9fee903dd..e4e239529 100644 --- a/docker/bionic/Dockerfile +++ b/docker/focal/Dockerfile @@ -1,7 +1,7 @@ # # Install Qt and Qbs for Linux # -FROM ubuntu:bionic +FROM ubuntu:focal LABEL Description="Ubuntu development environment for Qbs with Qt and various dependencies for testing Qbs modules and functionality" ARG QT_VERSION ARG QTCREATOR_VERSION @@ -29,12 +29,12 @@ RUN apt-get update -qq && \ usermod -a -G sudo ${USER_NAME} && \ echo "%devel ALL = (ALL) NOPASSWD: ALL" >> /etc/sudoers -COPY docker/bionic/entrypoint.sh /sbin/entrypoint.sh +COPY docker/focal/entrypoint.sh /sbin/entrypoint.sh ENTRYPOINT ["/sbin/entrypoint.sh"] # Qbs build dependencies RUN apt-get update -qq && \ - apt-get install -qq -y --no-install-recommends \ + DEBIAN_FRONTEND="noninteractive" apt-get install -qq -y --no-install-recommends \ bison \ build-essential \ ca-certificates \ @@ -54,8 +54,10 @@ RUN apt-get update -qq && \ libfontconfig1 \ libgl1-mesa-dev \ libgl1-mesa-glx \ + libnanopb-dev \ libprotobuf-dev \ libgrpc++-dev \ + nanopb \ ninja-build \ nsis \ pkg-config \ @@ -73,7 +75,7 @@ RUN apt-get update -qq && \ update-alternatives --install /usr/bin/clang-check clang-check /usr/bin/clang-check-8 100 && \ update-alternatives --install /usr/bin/python python /usr/bin/python3 100 && \ update-alternatives --install /usr/bin/pip pip /usr/bin/pip3 100 && \ - pip install beautifulsoup4 lxml pyyaml + pip install beautifulsoup4 lxml protobuf pyyaml ENV LLVM_INSTALL_DIR=/usr/lib/llvm-8 diff --git a/docker/bionic/test-android.Dockerfile b/docker/focal/test-android.Dockerfile index 64d22b8d1..a012f504f 100644 --- a/docker/bionic/test-android.Dockerfile +++ b/docker/focal/test-android.Dockerfile @@ -1,7 +1,7 @@ # # Android SDK/NDK + Qt for Android for testing Qbs # -FROM ubuntu:bionic +FROM ubuntu:focal LABEL Description="Ubuntu test environment for Qbs and Qt for Android" # Allow colored output on command line. @@ -27,7 +27,7 @@ RUN apt-get update -qq && \ usermod -a -G sudo ${USER_NAME} && \ echo "%devel ALL = (ALL) NOPASSWD: ALL" >> /etc/sudoers -COPY docker/bionic/entrypoint.sh /sbin/entrypoint.sh +COPY docker/focal/entrypoint.sh /sbin/entrypoint.sh ENTRYPOINT ["/sbin/entrypoint.sh"] # Qbs build dependencies @@ -35,7 +35,7 @@ RUN apt-get update -qq && \ apt-get install -qq -y --no-install-recommends \ ca-certificates \ curl \ - libasan4 \ + libasan5 \ libglib2.0-0 \ libgl1-mesa-glx \ openjdk-8-jdk-headless \ diff --git a/docker/focal/test-baremetal.Dockerfile b/docker/focal/test-baremetal.Dockerfile index d54a87dc2..0265ff135 100644 --- a/docker/focal/test-baremetal.Dockerfile +++ b/docker/focal/test-baremetal.Dockerfile @@ -33,7 +33,7 @@ ENTRYPOINT ["/sbin/entrypoint.sh"] # Install baremetal toolchains and Qbs runtime dependencies. RUN apt-get update -qq && \ apt-get install -qq -y \ - libasan4 \ + libasan5 \ libglib2.0-0 \ libgssapi-krb5-2 \ libgl1-mesa-glx \ |