Commit Graph

116 Commits

Author SHA1 Message Date
Heikki Halmet
a8bd91bc27 Provisioning: Remove old cmake before installing new one
Windows 10 x86 isn't yet vanilla so provisioning needs to remove old
cmake before installation

Change-Id: I2712aaa652492520d68a597d99a3c2d6bdbe2433
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2017-11-11 14:58:17 +00:00
Jan Arve Sæther
3653630d22 Provisioning: Disable NTP synchronization for Windows
During CI, it has been observed that some processes didn't leave their
wait state. (So they were "hanging")
During analysis of the event log on that CI node, we found out that at the
same time those processes entered this state, the NTP client set a new time
and indeed the local time of the CI node changed (it was
changed 2 hours forward in our case).
For the record, the processes we observed this with was jom.exe and
cc1plus.exe (the latter is the g++ compiler in the mingw toolchain)).

We therefore have a strong suspicion that the NTP time change was causing
the CI hang, so we simply disable it.
The virtual machine should anyway get the correct time from its VM host
when its started.

Change-Id: I1204063399e2a4741b7b26b79858759c1bc5eab2
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
2017-11-10 23:29:49 +00:00
Heikki Halmet
ada909932d Provisioning: Update Java to version 8
Current version of Java isn't installing correctly during provisioning.
Silent installation needs parameters which are added to script. Without
those the installation process tries to open Java3BillDevices.jpg
unsuccessfully and the installation fails

Task-number: QTQAINFRA-1498
Task-number: QTQAINFRA-1394
Change-Id: I5672d230eb348186345887da81cdd97a4f59bce8
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2017-11-09 04:23:43 +00:00
Heikki Halmet
0e278c4e95 Provisioning: Remove logical OR when echo errors
set -e won't work if logical OR is used after commands. These error
echo's need to be removed so that error catch will works. Also set -ex
added to print executed command when error caught.

Task-number: QTQAINFRA-1533
Change-Id: Ib4ea832a0ee813f99f59ebacad51ec57c3eff57d
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2017-11-07 15:25:12 +00:00
Tony Sarajärvi
baa46f9590 Provisioning: fix .ci.local addresses to .intra.qt.io
Change-Id: I0ae934a65a2eaefa0bc4db9afbe3b8701dcb0906
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2017-11-03 07:15:33 +00:00
Tony Sarajärvi
185eb5b414 Cleanup of provisioning scripts as tier1 images are vanilla
Change-Id: I58c5cb64075c0b60e2e8881dd32d6fad3ab98ec7
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2017-10-28 18:40:41 +00:00
Tony Sarajärvi
372d2bb076 Provision vanilla Windows 7 x86 and use it
Change-Id: I96eefe2e69b5cbe5d68329be2bb4273d03bb85ca
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2017-10-24 12:53:26 +00:00
Joni Jäntti
357202801f Make CI use a new RHEL 7.4 provisioning
Added all the provisioning scripts that install required
programs and make changes to certain settings. These are needed to
build qt5.

This commit replaces RHEL 7.2 in desktop builds, android builds
and INTEGRITY builds.

Task-number: QTQAINFRA-1251
Task-number: QTQAINFRA-1252
Task-number: QTQAINFRA-1253
Task-number: QTQAINFRA-1267
Task-number: QTQAINFRA-1269
Change-Id: Icef19df7fb799a4008ccdc0584821c982055e339
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2017-10-19 09:28:44 +00:00
Joni Jäntti
4cdfd8e902 Make 7zip provisioning script add 7zip to path
7zip is nice to have in path for future purposes such as when
cherry-picking to other branches where we use different
extracts scripts.

Change-Id: I40b0f8568e285d85927ad30365c0ab9224e21332
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2017-10-17 16:57:15 +00:00
Joni Jäntti
e8fc216658 Make Extract-7zip helper function work with the new provision location
Changed the helper function for extracting 7z files so that it also
supports the new C:\Utils\sevenzip location.

Change-Id: I4f2dafc4ccac71e2cd8a3c8148df4888f800484f
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2017-10-17 16:57:12 +00:00
Joni Jäntti
e09dc71d25 Make Ninja provisioning use Add-Path function
We should use this helper function now that we have it.

Change-Id: I9a522533795d4d4e63f608a0624378f066055b10
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2017-10-17 16:57:09 +00:00
Tony Sarajärvi
2a650c49ee Provisioning: Fix usage of DownloadURL to throw errors
In case DownloadURL failed it's shasum check, it printed an error
and threw an exit 1. This exit 1 was never handled in the calling
scripts and went ignored. It was also not passed forward as
it was inside a try-catch statement.

Change-Id: Iae4fd6aefb75c07623ec86dc570f0a46fec659b4
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2017-09-30 12:21:16 +00:00
Tony Sarajärvi
8a93a8fe6a Provisioning: cleanup path from cmake_linux.sh
Change-Id: Iced9f0c7811b9de076aee115502de0841c1a59cf
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-09-30 12:20:39 +00:00
Joni Jäntti
0e4d668e35 Add official URL to MinGW Windows 10 provisioning
MinGW currently uses only internal URL without backup. Added the
official URL to these scripts with SHA1 checksum verification.

Change-Id: Id9b8a1bf1110201414e9d79c9e713475118ff661
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2017-09-27 06:04:11 +00:00
Liang Qi
04ccf0e8db Merge remote-tracking branch 'origin/5.6' into 5.9
42b502f is not needed for branches >= 5.8, configure.exe does not
exist anymore.

30660bf was not applied to 5.9 branch, the scripts were not
adapted to new template.

 Conflicts:
	coin/platform_configs/default.txt
	coin/platform_configs/qt5.txt

Change-Id: Ie3681d5f641e99a074368f21b7f85fe31beacc17
2017-09-22 21:15:52 +02:00
Liang Qi
e7472f4308 Merge remote-tracking branch 'origin/5.6.3' into 5.6
Conflicts:
	.gitmodules

Change-Id: I3f5310cfb9b839e622ab606fd674a58d50515c0c
2017-09-18 09:42:25 +02:00
Simon Hausmann
57043fb07b Clean up QNX patching
Get rid of COIN_WEBSERVER_ADDRESS and download the QNX C++11 patches
from ci-files01 instead.

Change-Id: I7c32bfc1e1abef59b1e419e7dcdb73a5b16a895f
Reviewed-by: Simo Fält <simo.falt@qt.io>
2017-09-16 05:35:10 +00:00
Tony Sarajärvi
b0a9259c6e Provision and build QNX660 on Win 10 x64
Changes the mingw from 4.9 to 5.3.

Task-number: QTQAINFRA-1208
Change-Id: I360b9806c35e597a4b9fd0d57c10eebfb8643905
Reviewed-by: Sami Nurmenniemi <sami.nurmenniemi@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
2017-09-14 12:08:39 +00:00
Tony Sarajärvi
2a5f54d07e provisioning: install MinGW 530 and 630 for Win10 x64
MinGW is an alternative option for Visual Studio. It's
used to create desktop builds and for cross compiling
Android and QNX. At this point it is still unclear which
version is going to be used for what, but as both are
supported, let's think ahead and provide them both.
This also allows us to debug with the other, if the
other is causing problems.

Task-number: QTQAINFRA-1289
Change-Id: I2a922669c07d49370e608c093be80481c8613dc7
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2017-09-14 12:08:36 +00:00
Tony Sarajärvi
892833cda9 Provisioning: Invoke installer with Start-Process
By launching an installer with Start-Process and -Wait,
we make sure no handles are left holding on to the
installer when we try to delete it at cleanup.

Change-Id: Ic9b700ea1ce9e70089ba4cb7e91d9765ca976333
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
2017-09-14 12:08:32 +00:00
Simo Fält
92d1bdcb43 Provisioning: Fix shasum path
Commit c48355ebb5 changed
the path of shasum, which was not intended. While the
DownloadURL.sh utility is used by rhel in addition to
macOS we can't rely on /usr/bin/shasum but we have to
use the one found from PATH.

Change-Id: I67bb37dcb72ba3d8d1f279646e44228b27137ec9
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-09-08 04:34:41 +00:00
Simo Fält
c48355ebb5 Provisioning: Fix DownloadURL utility's shasum check
MacOS 10.10 has older shasum tool, which does not support oneliner
verification.

Change-Id: If00b846d5772aa1991960675d022249d63e7bd77
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-09-05 11:36:43 +00:00
Simo Fält
a3f4bf703b Provisioning: Fix helper function's mktemp in macOS 10.10
It seems that macOS 10.10 has a non standard mktemp command. It doesn't
work as expected but prints usage and exit instead.

Change-Id: I37be6eb01474466c2b6bbae4f38876673bd9c295
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2017-09-04 14:23:05 +00:00
Tony Sarajärvi
a7b1b00350 Provisioning: Hide powershell progress bar for performance
Change-Id: I74abdcc2e7d2dccf4f85cd64fe5fb4b56e54d613
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2017-09-04 12:12:17 +00:00
Joni Jäntti
dbf737a5c0 Fix Add-Path helper function and start using it in scripts
This function was broken and only added the latest addition to the
actual PATH.

Change-Id: Ida352c7b605c1b9748bb98e4f51ce68a765c3ce3
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-09-04 12:11:17 +00:00
Tony Sarajärvi
3ca7658781 Provision vanilla Windows 8.1 x86 and use it
Replaces existing Windows 8 x86 builds with
a vanilla tier 1 image that gets all needed
software provisioned except for VS2013 that is
pre-installed.
Also modifies existing provisioning scripts
under common to support this 32bit OS.

Task-number: QTQAINFRA-1383
Change-Id: I495cb2d78b4d2d8b2abb9af1254fff0a78a570d9
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2017-09-01 13:02:12 +00:00
Joni Jäntti
05dd83c73a provisioning: windows: ICU
Fixed ICU script to actually install ICU instead of just setting the
environment variables. It is required to build qtwebkit.

Change-Id: I8881f9c11599d99b4d400595c9b929cf6f37088a
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2017-09-01 08:05:57 +00:00
Simon Hausmann
6bf5691ca8 Merge remote-tracking branch 'origin/5.6' into 5.9
Conflicts:
	coin/provisioning/common/InstallPKGFromURL.sh
	coin/provisioning/qtci-linux-RHEL-7.2-x86_64/08-pythondev.sh
	coin/provisioning/qtci-linux-RHEL-7.2-x86_64/09-cmake.sh

Change-Id: I87b10d75250eecd5271be201fdf6b1d27cc5a791
2017-08-31 11:25:26 +02:00
Simo Fält
a99d3432f7 Install python3 on all platforms
Python3 is required in 5.6 by pyside-setup.

Task-number: QTAUTO-345
Change-Id: If11ca425fa08cce8a518710ded0a6ec58159343d
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
(cherry picked from commit a5f3f8ed48)
(cherry picked from commit a765838889)
(cherry picked from commit 1859f9b26c)
2017-08-30 19:57:54 +00:00
Simon Hausmann
1bd2b2acfa Fix code duplication for cmake installation on Linux
Share the code for installing cmake on Linux.

Change-Id: I535f2696151ea4db26dc7194a1fe7016799ed0e2
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-08-30 17:16:59 +00:00
Joni Jäntti
c7a9bb92e1 Fix adding to path lines for Windows provisioning scripts
Currently the path addition command will forget the previous addition
when adding a new string. This hasn't been found out because python
was the only script using this command. Now we also need to set the
path for ruby, so the python string is left out.

Change-Id: I39721d78111550189e52a9f095030033f9660c0a
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Reviewed-by: Joni Jäntti <joni.jantti@qt.io>
2017-08-30 17:16:56 +00:00
Tony Sarajärvi
835ef953f0 Provisioning: Fine tune cmake provisioning script
Add version printing and move version strings to variables for
easier reuse.

Change-Id: I5372872bf455609dfb7cc7bbcf7a110cd71933fb
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2017-08-30 17:16:52 +00:00
Alexandru Croitor
dfaabde5dc Enable developer mode on macOS platforms
Previously when a VM user tried to attach lldb to a process via ssh,
lldb would fail with the following error message:
"error: process exited with status -1 (unable to attach)". If this
were done over VNC rather than ssh, the user would instead get a UI
popup to enter a password to allow debugging the process.

When trying to debug an application using Xcode for the first time,
Xcode will offer to enable the so called "Developer Mode" which allows
attaching a debugger without specifying a password every time.

This change enables "Developer Mode", so that every VM user doesn't
have to.

Change-Id: Ie4e473a982c908afd456ac1773bbdaf4ce778094
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-08-24 04:49:06 +00:00
Liang Qi
74eb853384 Merge remote-tracking branch 'origin/5.6' into 5.9
Move the Documentation feature to the corresponding Ubuntu 16.04, where
the CI would have used it by magic.

Conflicts:
	coin/platform_configs/default.txt
	coin/platform_configs/qt5.txt

Done-with: Frederik Gladhorn<frederik.gladhorn@qt.io>
Change-Id: I885ce572710480cd15ecdc8cfac7edb52957f92a
2017-08-22 08:22:02 +02:00
Kari Oikarinen
c2493f9d6d Use libusb compiled with MSVC 2015
QDB has to change to using Windows 10 for releases, because Windows 8.1
is no longer available for non-qt5 builds as a packaging platform in 5.9
branch.

Don't provision libusb on earlier Windows versions, since they don't
have a compatible compiler.

Change-Id: I771a24fcf208c4961483a39e51cb7d95f004ed55
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
2017-08-21 17:49:27 +00:00
Simo Fält
62c6676f87 Provisioning: Install pip for macOS 10.12
Pip is required to provision python packages.

Change-Id: I73ab7556bb6b9ccc57ef078f422bfbba4bfed6a7
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-08-17 19:52:41 +00:00
Simo Fält
3690fe06a4 Provisioning: Update CMake on osx 10.10
Pyside requires cmake 3.1.0 or more recent.

Change-Id: Ic376d5e5af9f9b0692a2de7c4ec35e6c8bfa9465
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-08-17 19:52:35 +00:00
Tony Sarajärvi
7db6a1cd0f Provisioning: Reduce verbosity of uncompressing Xcode
Change-Id: Id09ace3fcdf53c3b6921ed277c9fe571b5c43e3b
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-08-17 19:52:24 +00:00
Simo Fält
c9f842af84 Provisioning: Install virtualenv for macOS 10.12
Python virtualenv command is used when building pyside modules,
which installs additional Python modules during build time
and requires access to installation directories.

Change-Id: Id34ac8b36710ba04d8db263acdaf2bd31e314de8
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-08-17 19:52:18 +00:00
Kari Oikarinen
1720ed0b6f Adapt comments to qdb repository move
Change-Id: I3ecdc952d1323a14471cdc87b6854b857d4297a7
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-08-16 18:57:26 +00:00
Kari Oikarinen
890a478e07 Update libusb version
Use an unreleased version that does not have a crash on Windows 7, since
there is not yet an official release that would include the fix.

Task-number: QTBUG-62430
Change-Id: I14d83d01fe3d4b0bfebe7514fbec7d25e99af731
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-08-16 18:57:15 +00:00
Heikki Halmet
5df417aeb9 Provisioning: Disable system updates
This change will disable system updates from App Store to prevent
unnecessary network load

Change-Id: I7915ec6ffce681a850abef59d58f953effd6deb0
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-08-16 06:03:50 +00:00
Joni Jäntti
bd3ddeddd2 Make CI use a new win 8.1 provisioning instead of win 8
Added all the provisioning scripts that install required
programs and make changes to certain settings. These are needed to
build qt5. This replaces the old Windows 8 template.

Made all the Windows platforms use the scripts under
provisioning/common/ instead of duplicate files.

Task-number: QTQAINFRA-1357
Change-Id: Ic3f0b50079b212437fff711379f243753ab84872
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-08-11 16:49:10 +00:00
Tony Sarajärvi
043e54c7c6 Update provisioning scripts with new intra.qt.io address
Change-Id: I9b4c5e9d0fe8e0e84596ad9086f563d11e97930b
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-08-08 20:05:08 +00:00
Simon Hausmann
f56f2c20c4 Merge remote-tracking branch 'origin/5.6' into 5.9
Conflicts:
	coin/platform_configs/default.txt

This also reverts c9d5341307 as on macOS
10.11 in 5.9 we're using a fresh virtual machine template that doesn't
have stale virtualenv/python installations.

Change-Id: Iab50fde0388c97967ada7c40374345ce4327613a
2017-07-19 13:24:43 +02:00
Konstantin Tokarev
dd5096c6c7 Conan: update ICU to 59.1, added VS2017 packages
MinGW packages will be upgraded in another patch.

Task-number: QTBUG-61728
Change-Id: Ie6a1996b7850282a7cdcbe5ceba61f1ce473cf69
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-07-09 04:51:54 +00:00
Konstantin Tokarev
6837a847bb Provisioning: install x86 conan packages on MSVC2015-x86_64 Win 10 host
Also upgrade to Conan 0.24.0.

Task-number: QTBUG-61829
Change-Id: Ia01609e5f2d8121eb216b03bc8e95bca7225042e
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-07-09 04:51:51 +00:00
Konstantin Tokarev
a96119c121 Provisioning: move Conan manifests to common directory
We need to use x86 packages from qtci-windows-10-x86_64 configuration,
so splitting Conan manifests by configuration is not a good idea anymore.

Task-number: QTBUG-61829
Change-Id: I8b2fc00865cce372ca6b5ec75b4775d345d0d18f
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-07-09 04:51:48 +00:00
Simo Fält
5f37f812f9 Provision homebrew
Some of the macOS templates are cleaner than others and are mising some
basic tools like 7z. Homebrew provides easy way to install wide range of
tools via command line.

Change-Id: I5a8528bb4a13ef9a72e2467c51a8b5d45f9a3d84
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-07-08 07:23:16 +00:00
Simo Fält
0001d102f8 Provision libclang
PySide versions following 5.6 use a C++ parser based on Clang.
The Clang library (C-bindings), version 3.9 or higher is
required for building.

Change-Id: Ia7bcad46e3214d6d8b688354c9abdc83a513573c
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-07-08 07:23:09 +00:00