Commit Graph

741 Commits

Author SHA1 Message Date
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
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
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
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
Gatis Paeglis
22e5bda9a9 provisioning: RHEL-7.4 install xcb-util-* packages
We do install them on Ubuntu and openSUSE. Eventually we want to stop
using bundled xcb libraries. Currently all builds of Qt on Linux use
-qt-xcb switch (see coin/src/targetenvironments.py::LinuxTargetEnvironment),
which is the reason why things build fine, even when packages are not
present on the system.

Change-Id: I856ddb5a17768b347aec3e593d6b969109a5c3a3
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
2018-11-29 20:20:13 +00:00
Gatis Paeglis
d9a869707e provisioning: consistently install libxkbcommon* on linux distros
Ubuntu was the only distro that installed both of the required packages:

installPackages+=(libxkbcommon-dev)
installPackages+=(libxkbcommon-x11-dev)

RHEL 7.4 did not explicitly install any, but got libxkbcommon-dev
pulled in as gtk3 dependency. Extract from provisioning log:

--> Processing Dependency: pkgconfig(xkbcommon) >= 0.2.0 for package: gtk3-devel-3.22.30-3.el7.x86_64
---> Package libxkbcommon-devel.x86_64 0:0.7.1-1.el7 will be installed

openSUSE explicitly installed libxkbcommon-devel, but not libxkbcommon-x11-devel.

Qt official binaries are built on RHEL, where we do not have
libxkbcommon-x11-dev installed. This means that XCB plugin and
Compose input plugin would fallback to using bundled sources.
It was actually desired until now that XCB/Compose use the
bundled sources instead of linking with the library from the
system, but this was only a lucky side effect. If we had installed
libxkbcommon-x11-dev on RHEL, then Qt binaries would end up
linking with the libxkbcommon from the system, because of the
missing "-qt-xkbcommon" configre switch for release builds.
We won't bundle libxkbcommon anymore, hence we need to install
the missing dependencies, as done by this patch.

Change-Id: I5c7b8ac38c266ce81cb5a3189a9082bfd581ee31
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
2018-11-29 20:19:57 +00:00
Ryan Chu
3ae624cd6e 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. 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>
2018-11-22 07:57:53 +00:00
Liang Qi
0c839f87fb Merge remote-tracking branch 'origin/5.11' into 5.12
Conflicts:
	coin/provisioning/common/unix/mqtt_broker.sh

Change-Id: I990dbf66b7120f2f1bcf202f0a2547a5ad9881f2
2018-11-20 19:37:06 +01:00
Heikki Halmet
84aaa89cf4 Provisioning: Fix path for fbx files
Currently Qt3d Studio build don't recognize fbx path because of space
in folder name. This change will fix it by taken use the packages which
don't have space in the folder name.

Task-number: QT3DS-2440
Change-Id: I502bb04489a03a5a81e164f8a86f3200f4ec3910
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2018-11-13 05:51:53 +00:00
Eike Ziller
7156b83710 Provisioning: Install perl on Windows 10 32-bit
Needed for Qt Creator build.

Change-Id: I5674f159de456a925e7a695546a53537f2517376
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2018-11-12 08:21:46 +00:00
Heikki Halmet
c89d9ed357 Provisioning: Add Rhel 6.6 for QtCreator
QtCreator need's to have provisioned Rhel 6.6 available.
(Partially) Reverts 54261be7c3

Task-number: QTQAINFRA-2270
Change-Id: Ie73c09181e0586dd0f4e9977208c9188037843d9
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2018-11-12 08:21:43 +00:00
Heikki Halmet
4d15cea11a Provisioning: Update Java to 1.8.0 version in Rhel 6.6
Currently Rhel 6.6 have too old Java version for Jenkins. This need to
be updated so that machine can connect with Jenkins.

Task-number: QTQAINFRA-2377
Change-Id: I653df6f1f060bdc12164cc407fcc4cd873d2b24f
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2018-11-08 13:52:01 +00:00
Matti Paaso
f335f71d02 Add new targets for packaging Jenkins
Change-Id: If2a769ef74ef01f663cc7673477346009d593e38
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
2018-11-08 13:51:34 +00:00
Heikki Halmet
1248a6787d Provisioning: Add scp and ssh location in the PATH for Windows
RTA needs to have these on the PATH

Change-Id: I59694737e9284bc31eefcc4ff89219665c2aa430
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
2018-11-07 20:07:36 +00:00
Heikki Halmet
7974f26b20 Provisioning: Disable notifications and remove apport
These can cause flakiness during tests

Task-number: QTQAINFRA-2307
Change-Id: Ib8b850e3e1fabe3070bbd27785d043984e085cb7
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2018-11-07 07:23:49 +00:00
Simo Fält
5a040ca46a 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>
2018-11-06 19:30:23 +00:00
Heikki Halmet
abe69c34bb Provisioning: Install chrpath for Jenkins
Task-number: QTQAINFRA-2270
Change-Id: I5afd9c6682ff6acb040ee069f3d7a179260f71d3
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2018-11-06 17:34:02 +00:00
Joni Jäntti
7e67d0e558 Provisioning: RHEL-6.6: Update curl
The currently used version of curl does not support TLS 1.2 or newer.
Since download.qt.io has minimum requirement of TLS 1.2 we need to
update the these packages.

Task-number: QTQAINFRA-2212
Change-Id: I4737443b5b2180a592a18d9095fe3f31063ba329
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2018-11-02 07:59:24 +00:00
Ryan Chu
9dc75c3a3d Provisioning: Enable Docker-based test servers to macOS_10.12
Build and provision docker images of test servers into the docker-cache.

Relates to qt/qt5 ea76ace825

Change-Id: I3fbdd7a733669935c64575d50c209da9adf51f42
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
2018-11-01 08:43:14 +00:00
Tony Sarajärvi
b082d7d544 Replace .ci.local addresses with .intra.qt.io in provisioning scripts
Change-Id: I5e5bc084faabb28ffdf0437871445ecb8970bfb3
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-11-01 07:16:57 +00:00
Joni Jantti
37eeb598cc Provisioning: PyPFD2
Required for reading PDF doc files in RTA tests.

Task-number: QTQAINFRA-2103
Change-Id: I4da98460fb5d5ad26f9e1e16c503a0d94be047a6
Reviewed-by: Johanna Äijälä <johanna.aijala@qt.io>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
(cherry picked from commit bb6a91d5d4)
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2018-10-31 19:39:10 +00:00
Heikki Halmet
1f07276692 Provisioning: Remove environment variables from androind-openssl
We shouldn't need those anymore.

Task-number: QTQAINFRA-1266
Change-Id: Ie2161eb1d05cc1af26cbbb1a46525a9a8d7c3a30
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2018-10-31 15:47:01 +00:00
Liang Qi
d3299a3d27 Merge remote-tracking branch 'origin/5.12' into 5.12.0
Change-Id: I41f6780d67aeb9e065d86f53feee71d38c00428f
2018-10-30 12:22:55 +01:00
Antti Kokko
01faa84629 Update qt3d-runtime.txt targets
Add missing macOS and Windows Android arm64 targets.
Remove iOS target that is now included in default.txt.

Change-Id: Ifc20336b94477b2f8be456ef7f7f8bfaf8bf1190
Reviewed-by: Akseli Salovaara <akseli.salovaara@qt.io>
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2018-10-30 09:56:38 +00:00
Ryan Chu
ea76ace825 Docker Provisioning: Install Docker-based test servers on macOS
Build and cache docker images based on the configurations in testserver.
1. Move the shared Docker files to common/shared/testserver
2. Deploy boot2docker image into VirtualBox via docker-machine commands.
3. Build and tag the docker images by the SHA-1 of server context.

Change-Id: Ic5a588e5cc5e753ec4c4e2e1bc79917bbd03f95d
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2018-10-30 08:15:43 +00:00
Juha Karjalainen
3b4ca5d6c0 Provisioning: Update openssl to version 1.0.2p
Task-number: QTQAINFRA-2266
Change-Id: I3f09d9169f17bcd83dcfd72547440bca487fd9db
Reviewed-by: Simo Fält <simo.falt@qt.io>
2018-10-26 07:23:14 +00:00
Simo Fält
d65d71731f CI platform config: Make 32 bit msvc2017 config as default
Swapping 32 bit windows packaging configs so that MSVC 2017 is
built as default config and MSVC 2015 only for qt5.

As the config is not part of the default.txt we have to add it as
module specific config.

Change-Id: I3c423c2c80d0093fdeca340d6faa8e162c03b5cd
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2018-10-25 12:35:07 +00:00
Liang Qi
16c6fa419a Merge remote-tracking branch 'origin/5.12' into dev
Change-Id: I34a18e1ea9ca774638ffe65d08d1fee46efba4aa
2018-10-20 14:17:57 +02:00
Tony Sarajärvi
4667cfc432 Update Android NDK and SDK on macOS envs
Task-number: QTQAINFRA-2244
Change-Id: I20994bc7a64edefda09da68c4beddde4dc9948aa
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-10-20 05:16:02 +00:00
Tony Sarajärvi
bc5e5baf55 Update Android NDK and SDK on Windows envs
Task-number: QTBUG-47672
Change-Id: I3e6526b296f15927b90ab3310d91f8505b0228b3
Reviewed-by: Liang Qi <liang.qi@qt.io>
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2018-10-20 05:15:55 +00:00
Tony Sarajärvi
97efaacb2b Update Android NDK and SDK on Linux envs
Task-number: QTBUG-47672
Task-number: QTQAINFRA-2298
Done-with: Liang Qi <liang.qi@qt.io>
Change-Id: I42c87d8453423530173b826c09dc6eb4bf9ad5b8
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-10-20 05:15:40 +00:00
Joni Jäntti
c51cbddc90 Provisioning: Windows_7_x86: libclang
libclang is required for qdoc.

Task-number: QTBUG-69793
Change-Id: I60b54b4338ed6fd3bae99813e268816e063c648a
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2018-10-18 11:07:43 +00:00
Joni Jäntti
7e40cd3a7f Provisioning: macOS_10.13: Update Xcode and cmd line tools to 10.0.0
Xcode and command line tools version 10 have been released, we
should start building our Qt releases with it, both for iOS and
macOS.

Installing Xcode 10.0.0 requires OS version update to 10.13.6. A new
tier 1 image has been created with the updated OS and this change
takes it into use.

Task-number: QTQAINFRA-2274
Change-Id: Ida7df234ecfd356b2cb2545ae10cd501dc47197b
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2018-10-18 10:59:34 +00:00