Commit Graph

1470 Commits

Author SHA1 Message Date
Ryan Chu
ab3e34827a Display the provisioned version of docker tool kits
For debug purpose, print the installed version of docker,
docker-compose, and docker-engine. Because 'docker info' is related to
the docker-engine, postpone calling the command until docker virtual
machine has been created.

Change-Id: I4c869b7122b831b7f22c9c3846ac9cbe47c3b355
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Liang Qi <liang.qi@qt.io>
2019-02-02 12:23:11 +00:00
Ryan Chu
b97e448ba4 Move and merge the provisioning scripts of docker to a shared folder
To reuse the provisioning scripts for all platforms, they are moved to a
shared folder (coin/common/shared/testserver). The scripts of macOS and
linux are combined and controlled by an input parameter (macos/linux).

Change-Id: Ibf9a438d1825d01d707c2fc8fbcf2bc70a8b4902
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
2019-02-02 12:23:07 +00:00
Heikki Halmet
3cb745565f Provisioning: Renew iOS signing certificates
Task-number: QTQAINFRA-2690
Change-Id: I4a058c7d88b3daa24f62d5bc314ec2b0ecc8c383
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-02-01 10:50:32 +00:00
Juha Karjalainen
366eaceff0 Change order in which certain provisioning scripts are run
Disables windows update and defender  now earlier in provisioning.

Task-number: QTQAINFRA-2592
Change-Id: I4cc380830695a97f02b54ab904e2f6192fc36d44
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-01-29 15:24:41 +00:00
Juha Karjalainen
afbd9305e3 Fix provisioning failure when unsetting proxy with no proxy
When unset-proxy.ps1 script is run when there is no proxy set
unset script fails leading provisioning to fail. Now will check
if  proxy is set before removing registery keys for it.

Task-number: QTQAINFRA-2311
Change-Id: Ic50bcebc634bb90385ca817dac9bed24e9e897ec
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-01-29 15:24:38 +00:00
Heikki Halmet
8ba5474da7 Provisioning: Install Google's Protocol Buffers
Protobuf is needed for Automotive Suite

Task-number: QTQAINFRA-2314
Change-Id: I12b4248f1de5aea88f573297a47b791b5b6296fb
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
2019-01-29 12:10:57 +00:00
Heikki Halmet
54cdba9e3d Provisioning: Remove Unneeded Android variables
Change-Id: I7dd008aef6465fdddd07e227b48e9b6361c13f81
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-01-29 12:10:53 +00:00
Oliver Wolff
92b7d48bc2 Windows provisioning: Explicitly state OpenGL configuration to use
One of our configurations relied on ANGLE being the default OpenGL
configuration on Windows. This is the case at the moment, but might
change, so we should not rely on this behavior, but explicitly state the
configuration we are expecting.

Change-Id: Ie8cb215c2675faf8b514f4d9a43055638be1aaa8
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
2019-01-25 11:57:42 +00:00
Aapo Keskimolo
daf0d3a4c6 Update qtsaferenderer platform configuration definitions
The project-specific platform configuration file is renamed to follow the
convention as for other projects. This will allow Coin to recognize the
configuration that are specific for qtsaferenderer project where they
were previously (unintentionally) ignored.

Removed QNX 7 as it is in the Qt mainline configuration.

Removed Ubuntu 16.04 as Ubuntu 18.04 is now supported.

Task-number: QSR-209
Change-Id: I505edc3741dbc047b2fc23bc409016d712596872
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-01-25 09:02:08 +00:00
Tuomas Heimonen
22f032bd02 Build qtsaferenderer examples in Windows
Task-number: QSR-209
Change-Id: If8db177a77e3340f6b75f5a7fa768b6d8abec017
Reviewed-by: Aapo Keskimolo <aapo.keskimolo@qt.io>
2019-01-23 13:31:36 +00:00
Liang Qi
85eb7b7a03 Merge remote-tracking branch 'origin/5.12' into dev
Conflicts:
	coin/platform_configs/default.txt

Change-Id: Ie21baa51738ce0761fb45fba3819b1894cc808b6
2019-01-23 08:02:11 +01:00
Tony Sarajärvi
47d14b365e Accept license in Android SDK provisioning
A change in Android SDK prompts us now for
accepting license.

Task-number: QTQAINFRA-2591
Change-Id: I1ff05d84ccda743649c6d38784c6170e08f50eb1
Reviewed-by: Liang Qi <liang.qi@qt.io>
2019-01-23 01:29:37 +00:00
Heikki Halmet
4ddadb9aa3 Add Qt WebAssembly for all submodules
Task-number: QTBUG-63917
Change-Id: I61074c8b1acbf3ffd7781e7435784c4a15412c98
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
2019-01-17 13:03:27 +00:00
Juha Karjalainen
3332223130 Provisioning: breakpad for qt3dstudio
Breakpad https://chromium.googlesource.com/breakpad/breakpad/
sources are needed for qt3studio. Also Breakpad need sources for
https://chromium.googlesource.com/linux-syscall-support.

Task-number: QT3DS-2650
Change-Id: I13c7534e1c6e97a1e345dad3c2c82eeb6428313d
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2019-01-17 09:45:12 +00:00
Simo Fält
6d2929d1aa Provisioning: Move Android toolchain and config to win10
Installing Android toolchains and ssl headers to win10 template
and moving Android windows platform configs to win10 from win7.

Task-number: QTQAINFRA-1266
Change-Id: I9b3e3a378451e0bdfc7dc5c7b75ee035faf8994c
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
(cherry picked from commit 5a040ca46a)
2019-01-17 09:45:05 +00:00
Heikki Halmet
ea0825abe8 Provisioning: Remove update notifier
Update notifier is showing when vm is running.
It can affect to test results and that's why it need to be removed

Task-number: QTQAINFRA-2453
Change-Id: Icb27ba998ef9a51aaf8f40274c182b0c3dcd496a
Reviewed-by: Sami Nurmenniemi <sami.nurmenniemi@qt.io>
Reviewed-by: Juha Karjalainen <juha.karjalainen@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
2019-01-17 09:45:02 +00:00
Maurice Kalinowski
209d09d530 Provisioning: Update Unified Automation OpcUA backend
Adding in the x64 bit installers to deployment. Furthermore, we can use
the msvc2015 installer to create msvc2017 binaries with Qt.
After the licensing change, we will be able to generate packages for all
msvc based installers.

Change-Id: I96db345b535a2518c758175137c808b15130ff41
Reviewed-by: Rainer Keller <Rainer.Keller@qt.io>
2019-01-16 07:30:37 +00:00
Simo Fält
332ec62ead Fix qtbase LinuxWebAssembly config host
The OpenSUSE 42.3 was replaced with OpenSUSE 15.0.

This amends 89e0159bbc, Swap openSUSE 42.3 to 15.

Task-number: QTQAINFRA-2067
Fixes: QTQAINFRA-2555
Change-Id: I0cd10bcfda5a63fecda0ccdb652b6cc23f349339
Reviewed-by: Liang Qi <liang.qi@qt.io>
2019-01-15 09:31:49 +00:00
Heikki Halmet
c1f3a886ed Provisioning: Signtools for Windows x86
QtDesignStudio requires signtools for Windows x86

Task-number: QTBUG-72907
Change-Id: I7fb15cb07511cb89d3be00e1fe65247ecc21bcfe
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-01-14 10:25:09 +00:00
Tuomas Heimonen
6930998900 Add qtsaferenderer extra targets for Coin
The cross-compile targets that qtsaferenderer needs do not exist in qt5
therefore we add those extra targets for CI.

Task-number: QSR-378
Change-Id: Ia07074392b09af8d111a957027407f85518e5d85
Reviewed-by: Aapo Keskimolo <aapo.keskimolo@qt.io>
(cherry picked from commit f7b6a4c276)
Reviewed-by: Kari Oikarinen <kari.oikarinen@qt.io>
2019-01-11 11:21:58 +00:00
Tony Sarajärvi
89e0159bbc Swap openSUSE 42.3 to 15
Task-number: QTQAINFRA-2067
Change-Id: I71f79181704d6ce8faac0019f6d7a5016b0ecb5e
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2019-01-10 17:39:51 +00:00
Juha Karjalainen
cfa7877afe Fix provisioning ODBC environmetal variables had : at end
CPLUS_INCLUDE_PATH and LIBRARY_PATH environmental variables had
 --> : <-- at end of variable. As this adds current dir to search
path this is undesirable and causes bugs.

Change-Id: Ia36c3f3f791f5d506eea15aba6be6d665049a922
Reviewed-by: Juha Karjalainen <juha.karjalainen@qt.io>
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
2019-01-10 12:32:57 +00:00
Maurice Kalinowski
56c43a03cd Provisioning: Update Qt OpcUA backends
- Unified Automation SDK needs to be updated to 1.6x to reflect latest
API changes
- Open62541 is now inside 3rdparty of the Qt OpcUA module. Hence, no
need to provision it.

Change-Id: I96a3764053ca684fa71f9d49e998ebe0ce45a6ae
Reviewed-by: Jannis Völker <jannis.voelker@basyskom.com>
Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
Reviewed-by: Rainer Keller <Rainer.Keller@qt.io>
2019-01-09 09:57:35 +00:00
Simon Hausmann
0b18f12f99 Prospective fix for git lfs installation
Keys used to sign package repositories tend to have expiry dates and
therefore need to be changed from time to time. Therefore hardcoding
the key we expect here will break (as it does right now) and it's better
to retrieve the expected key via a secure transport.

The old key - per
http://keyserver.ubuntu.com/pks/lookup?search=0xC2E73424D59097AB&op=vindex
- will expire on the 12 of January. That's probably why they changed the
key used to sign the repo before the expiry.

Change-Id: I39d082a6e12731b7eb0a8214a500101ca24f8af4
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2019-01-09 09:56:56 +00:00
Juha Karjalainen
7028ee3184 Fix broken provisioning script DownloadURL.sh
DownloadURL returns 0 even when alt download fails.

Task-number: QTQAINFRA-2501
Change-Id: Id2fb1e0b4ff12a48b6adb27291f55fc129296233
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2019-01-09 09:14:02 +00:00
Juha Karjalainen
f4b482d844 Provision: install unixodbc-devel library
Adds odbc support for rhel7.

Task-number: QTBUG-72444
Change-Id: I49b1e91d9f87bdf98601627538aaa65b78440451
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2019-01-08 15:09:55 +00:00
Tony Sarajärvi
6b64780b61 Fix .ci.local to .intra.qt.io in docker provisioning
Change-Id: I9de241e70a5dd15568619da6e4a19d54e76e5a4c
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2019-01-07 15:01:31 +00:00
Simo Fält
421eb7551b Provisioning: Enable support for printer test
Task-number: QTQAINFRA-992
Change-Id: Ibf13b8df51e72b2885c85af7bb256c73ce5697ed
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
2019-01-07 15:01:24 +00:00
Tuomas Heimonen
f7b6a4c276 Add qtsaferenderer extra targets for Coin
The cross-compile targets that qtsaferenderer needs do not exist in qt5
therefore we add those extra targets for CI.

Task-number: QSR-378
Change-Id: Ia07074392b09af8d111a957027407f85518e5d85
Reviewed-by: Aapo Keskimolo <aapo.keskimolo@qt.io>
2019-01-07 13:28:36 +00:00
Heikki Halmet
72d0cfc6dc Provisioning: Add Squish Coco for RTA
Task-number: QTQAINFRA-2393
Change-Id: I391a2670a46835988da6fd1d9121172c706c7a21
Reviewed-by: Johanna Äijälä <johanna.aijala@qt.io>
2019-01-04 14:09:59 +00:00
Tony Sarajärvi
2657a96f0e Upgrade macOS 10.12.3 to 10.12.6
Also changes the resolution of the desktop to 1280x800x32,
timezone to GMT and upgrades Xcode.

Task-number: QTBUG-70180
Change-Id: I4620cbfa3033a100b0e325951a5a9ebcbfa92751
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Liang Qi <liang.qi@qt.io>
2019-01-03 12:59:57 +00:00
Juha Karjalainen
e28da040ee Provisioning: Unify duplicated openssl provisioning script
MacOS(10.12 and 10.13) had two identical provisioning scripts for
openssl. Now unified under common.

Change-Id: If469a56d431e72b291a810fa9c1b701873fe382d
Reviewed-by: Aapo Keskimolo <aapo.keskimolo@qt.io>
2019-01-03 11:46:20 +00:00
Frederik Gladhorn
b78812f84e Reduce the number of zypper invocations
Change-Id: Ibb1c76fc4786d19a921c31b0933746f9dfefcde8
Reviewed-by: Liang Qi <liang.qi@qt.io>
2019-01-03 08:03:31 +00:00
Joni Jäntti
2306cb69c8 Provisioning: Windows: Disable automatic defragmentation
Automatic disk defragmentation is enabled by default on Windows
machines. It should be disabled to save some time.

Task-number: QTQAINFRA-2217
Change-Id: I3f024208bd35c9e305569e6b2b562f5a8b16f6f1
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-01-02 12:23:01 +00:00
Liang Qi
38e2fc6b80 Merge remote-tracking branch 'origin/5.12' into dev
Conflicts:
	.gitmodules
	coin/provisioning/common/linux/docker_testserver.sh
	coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/02-apt.sh

Done-With: Ryan Chu <ryan.chu@qt.io>
Change-Id: I9bc3afcb50783a9f0f7718731d237de4be287cae
2019-01-02 10:46:49 +01:00
Tony Sarajärvi
2dd72ec5a6 Fix .ci.local to .intra.qt.io in provisioning scripts
Change-Id: I113095b337c3592757878fb919a0a18a60a8ce7e
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2018-12-31 13:02:00 +00:00
Juha Karjalainen
55a990322b Provisioning: Install ODBC for macOS 10.12 10.13
This script installs libiodbc from brew and adds it to
CPLUS_INCLUDE_PATH and LIBRARY_PATH thus enabling configure to
find it and thus enabling odbc support for qt build on macOS.

Task-number: QTBUG-58956
Change-Id: I7f865800b580a87afcc480534da57ee546c74406
Reviewed-by: Antti Kokko <antti.kokko@qt.io>
2018-12-31 10:45:04 +00:00
Simo Fält
0a6d32bdd8 Provisioning: Install XCode 10.1
Task-number: QTQAINFRA-2323
Change-Id: I8fa4e146b2da71fba641f982d8114a916df42fc7
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2018-12-31 08:12:20 +00:00
Liang Qi
0e82de327b Merge remote-tracking branch 'origin/5.12.0' into 5.12
Change-Id: Ifb4277657a6f85e6a6d0ee62e54360b2cb1c0514
2018-12-22 23:21:54 +01:00
Juha Karjalainen
cbdd122e18 Provisioning: Update install android sdk to version 28
QT needs at least buildSdk 24 after commit
70057dfc0e53b7996acd5ef2c0f9c40aa3f66062. Updating provisioned sdk
version to 28. Please note minSDK <= targetSDK <= build/compileSDK.

Task-number: QTQAINFRA-2412
Change-Id: I0bf67cf42dfc6f707bdeae973a60c6601d2e73c3
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-12-18 08:20:41 +00:00
Heikki Halmet
deacc72f73 Provisioning: Hide squish installation output from provisioning log
This will prevent the output of unwanted information

Change-Id: I547e91ef344ec51f799b26f254139b03d20a315c
Reviewed-by: Simo Fält <simo.falt@qt.io>
2018-12-17 07:16:39 +00:00
Oliver Wolff
7bee789af3 Add configuration to run qtconnectivity tests on winrt
Change-Id: Ib9b61b19033d4ceb7ce15ecc8c1a0227b53bb669
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
2018-12-12 13:49:45 +00:00
Juha Karjalainen
e21401751a Provisioning: Change how executables are waited to finish
This patch only affects Windows.
Python3 provisioning took over 30-35 minutes. As both
32 and 64 bit versions are provisioned it took over 1h
this change lowers time taken to 5 minutes.

start-process with -wait flag waits for given process and its
sub-processes to exit.  Wait-process insteads just waits for
process to exit.

Change-Id: Ib9a323dcf9e2d07318a0d259a72ca4c4d0a4ed80
Reviewed-by: Simo Fält <simo.falt@qt.io>
2018-12-12 13:49:42 +00:00
Juha Karjalainen
bc12bb763f Provisioning: Windows 10 32bit remote desktop access allow
Allow accessing windows remote desktop.

Task-number: QTBUG-71874
Change-Id: I70c0acc309bd5e2bc590e7cd35a918ca7940fd03
Reviewed-by: Liang Qi <liang.qi@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2018-12-12 13:49:39 +00:00
Heikki Halmet
a1cd361579 Provisioning: Add missing prefix for yocto_ssh_configurations
Change-Id: I1a49737188cff6291b16797293a221043bdddad1
Reviewed-by: Juha Karjalainen <juha.karjalainen@qt.io>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2018-12-12 13:49:35 +00:00
Ryan Chu
959d9bdb67 Docker Provisioning: Install Avahi daemon on Ubuntu
Avahi is a free Zeroconf implementation and provides mDNS service
discovery. It enables Docker containers to publish their services on a
local network. For the host systems supporting mDNS technology, they
will automatically discover the services when running network tests.

However, some of the Linux distributions don't have avahi-daemon
installation by default (e.g. Ubuntu Server 18.04). To not surprise the
user, the provisioning script will help to install avahi-daemon package.

Change-Id: Ibb4c278c552c149b15da8cf7918f7f71ffa3ebec
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
2018-12-10 14:11:01 +00:00
Ryan Chu
a695130478 Assert the provisioning process in macOS if VMX is not enabled
The Docker-machine requires VT-x/AMD-v to build up boot2docker virtual
machine. The VMX flag should be enabled when deploying the VM into
Virtualbox. In the CI framework, it relies on Coin to expose the VMX
flag to the CPU feature. To well handle the case that the VMX could be
removed due to some CI updates, the provisioning script will assert the
process with the related debug message if VMX is not found.

Change-Id: I9f3f123d33629df1655a5b55d776d5361878d1f5
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
2018-12-10 14:10:58 +00:00
Ryan Chu
477fc6a73f Docker Provisioning: Remove the obsolete tag of test servers from Ubuntu
The SHA-1 tag of a server image is generated by the shared function
(sha1tree) in testserver_util.sh. The sha1tree function sorts the files
by the their SHA-1 and use the accumulated results as the TAG. So that,
we can assign the same SHA-1 value to a server on all the platforms.

Change-Id: If87ac72f7a9c5cdebef04977480d27b26a701b73
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
2018-12-10 14:10:54 +00:00
Ryan Chu
ce3791a214 Docker Provisioning: Remove the fixed version of package dependencies
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.

The SHA-1 of the provisioned images in docker cache:
qt-test-server-apache2:537fe302f61851d1663f41495230d8e3554a4a13
qt-test-server-squid:9c32f41b19aca3d778733c4d8fb0ecc5955e893c
qt-test-server-vsftpd:f3a9c8d793a77cc007c0e4e481bec01f9e3eeb7e
qt-test-server-ftp-proxy:d7de8b28392d173db512a558ccc84ead8bece2ae
qt-test-server-danted:35607f9b790524cf9690c7d12a9a401696b7b6b5

Change-Id: I4e6c8cb235f1f798274eb52858e06d8755ae626f
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
2018-12-10 14:10:51 +00:00
Tony Sarajärvi
4de6c12b17 Don't set http_proxy in its own subshell
The subshell actually meant, that the http_proxy environment
variable was never seen outside that check. Thus proxy was never
used where this was checked.

Change-Id: I069f43f13dffca98d8b60a47c2e105209018c84d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2018-11-29 20:20:26 +00:00