mirror of
git://code.qt.io/qt/qt5.git
synced 2026-01-07 15:36:54 +08:00
Free the dependencies of the specific Ubuntu packages. Ensure that test server is using the latest version of the Ubuntu packages to test network changes. Otherwise, all the docker files need to be manually updated when upgrading to the next Ubuntu version (e.g. 18.04). For debugging purpose, the installed packaged will be listed in the provisioning logs. Change-Id: I38d119d11f33cfd60dc34fcd57ec0fe1615e98f2 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
70 lines
3.0 KiB
Bash
Executable File
70 lines
3.0 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
#############################################################################
|
|
##
|
|
## Copyright (C) 2017 The Qt Company Ltd.
|
|
## Contact: http://www.qt.io/licensing/
|
|
##
|
|
## This file is part of the provisioning scripts of the Qt Toolkit.
|
|
##
|
|
## $QT_BEGIN_LICENSE:LGPL21$
|
|
## 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 http://www.qt.io/terms-conditions. For further
|
|
## information use the contact form at http://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 2.1 or version 3 as published by the Free
|
|
## Software Foundation and appearing in the file LICENSE.LGPLv21 and
|
|
## LICENSE.LGPLv3 included in the packaging of this file. Please review the
|
|
## following information to ensure the GNU Lesser General Public License
|
|
## requirements will be met: https://www.gnu.org/licenses/lgpl.html and
|
|
## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
|
|
##
|
|
## As a special exception, The Qt Company gives you certain additional
|
|
## rights. These rights are described in The Qt Company LGPL Exception
|
|
## version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
|
|
##
|
|
## $QT_END_LICENSE$
|
|
##
|
|
#############################################################################
|
|
|
|
set -ex
|
|
|
|
# Using SHA-1 of each server context as the tag of docker images. A tag labels a
|
|
# specific image version. It is used by docker compose file (docker-compose.yml)
|
|
# to launch the corresponding docker containers. If one of the server contexts
|
|
# (./apache2, ./danted, ...) gets changes, all the related compose files in
|
|
# qtbase should be updated as well.
|
|
#
|
|
# For example, here's how to get the SHA-1 of apache test server.
|
|
# find ./apache2 -type f -print0 | sort -z | xargs -r0 sha1sum | \
|
|
# awk '{ print $1 }' | sha1sum | awk '{ print $1 }'
|
|
|
|
testserver='apache2 squid vsftpd ftp-proxy danted'
|
|
|
|
for server in $testserver
|
|
do
|
|
context="${BASH_SOURCE%/*}/$server"
|
|
sha1=$(find $context -type f -print0 | sort -z | xargs -r0 sha1sum | awk '{ print $1 }' | \
|
|
sha1sum | awk '{ print $1 }')
|
|
sudo docker build -t qt-test-server-$server:$sha1 $context
|
|
|
|
# transition - The fixed tag is temporarily used by CI to pass the qtbase testing.
|
|
case $server in
|
|
apache2) fixed_tag="cc9ea678b92bdda33acb9fa0159bb4ad0f3cd947" ;;
|
|
squid) fixed_tag="577d99307eea9a8cccfec944d25be2bce2fe99cc" ;;
|
|
vsftpd) fixed_tag="18896604c7e90b543e56d80c8a8aabdb65a590d0" ;;
|
|
ftp-proxy) fixed_tag="2c6c8f1ab6a364b540c43d705fb6f15a585cb2af" ;;
|
|
danted) fixed_tag="327dd56c3c35db85b26fac93213a5a1918475bc7" ;;
|
|
esac
|
|
[ -z "$fixed_tag" ] || \
|
|
sudo docker tag qt-test-server-$server:$sha1 qt-test-server-$server:$fixed_tag
|
|
done
|
|
|
|
sudo docker images
|