Commit Graph

99 Commits

Author SHA1 Message Date
Tony Sarajärvi
2b7355e69c Update MinGW 7.3.0 to Mingw 8.1.0
Task-number: QTQAINFRA-3304
Change-Id: I4a962c112f4925224e91c08117c7324112d70729
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
2020-03-23 14:53:02 +00:00
Konstantin Tokarev
b73e61a458 Provisioning: update Conan and Conan packages to latest versions
Task-number: QTQAINFRA-3556
Change-Id: If9c600a6bb3aae893924f9372c8b248d3e58f887
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2020-02-22 12:01:44 +03:00
Dimitrios Apostolou
de2b280ad8 Windows now report versions.txt and df info at the end of provisioning
Change-Id: Ic2b299c04c91eb498822aca110cea774fdb7cf17
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2020-02-15 07:38:50 +01:00
Heikki Halmet
569fd1dabc Provisioning: Install pre-builded openssl for Windows 7
Task-number: QTQAINFRA-3224
Change-Id: I972b497e1a98f2ebbb6633158714409313cf0506
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-11-12 07:09:49 +02:00
Heikki Halmet
60befd7508 Provisioning: Disable automatic cleanup from windows
Task-number: QTQAINFRA-3238
Change-Id: Ie64086b650016adb7129bd4c4592ca987cc1453b
Reviewed-by: Daniel Smith <Daniel.Smith@qt.io>
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-10-18 13:53:05 +03:00
Dimitrios Apostolou
de56775c32 Move telegraf install to start of provisioning windows
Change-Id: Icf4f213be5a33ec2ad89d514b9bba5d4a3587117
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2019-09-27 08:42:54 +02:00
Dimitrios Apostolou
8f4c12bc03 Install 7-zip at the beginning of provisioning Windows
so that we can extract zip files early and install telegraf.

Also moved disabling Windows defender, to keep it at
the very beginning of provisioning.

Change-Id: I6c2039ebd20e541bdd7d437dd56ccb06a1619a5f
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2019-09-27 08:42:43 +02:00
Dimitrios Apostolou
fbe3a8d84e Install telegraf on all provisioned VMs
Install binaries as early as possible in the provisioning process, and
start them, in order to monitor provisioning too.

To achieve this, some OS auto-detection logic is introduced in shell
script common.sourced.sh. The script can be sourced and used in all kind
of other generic scripts.

ioping is also installed from custom-compiled binaries in order to
monitor the disk latency of the VMs. Reason we don't use ioping from the
repositories, is that the units differ between ioping versions (new
ioping reports latencies in nanoseconds, old in microseconds).

Fixes: QTQAINFRA-3092
Change-Id: I9d9afb791955725d4bd0b32dae97dfc0bd4a76a3
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2019-09-27 08:42:31 +02:00
Konstantin Tokarev
716640a477 Provisioning: update Conan and Conan packages
[*] Update Conan to 1.17.0, adjust to change in command line arguments
[*] Update Conan packages to up-to-date versions, add libjpeg-turbo and
    packages for 64-bit MinGW
[*] Rename 03-conan.ps1 to 11-conan.ps1 so that it is installed after
    Python 3 and MinGW
[*] Add license header to conan.ps1

Change-Id: Ibc451ddc54a7227eb6d3a007a20351e77a46875f
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2019-07-26 19:52:45 +03:00
Konstantin Tokarev
2666f3b216 Provisioning: rename 03-conan.ps1 to conan.ps1 to follow naming convention
Change-Id: If24541709d4675498bc4af296e05ce3c62d5045a
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2019-07-26 19:52:24 +03:00
Heikki Halmet
acff1703e4 Install prebuilded OpenSSL 1.1.1b for Windows 7
Change-Id: Ie1ec2d6aaeea8432a654741ed7969cc66c3da7f5
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
(cherry picked from commit 247b429c3c)
2019-06-10 10:19:00 +03:00
Juha Karjalainen
31f5c48a80 Provisioning: Change openssl version to 1.1.1b
Use newest LTS version of openssl as support for 1.0.2 series
will end at end of 2019.

For windows 7 x86 openssl 1.0.2 will be used until all need fixed
are made to submodule tests

Task-number: QTQAINFRA-2327
Change-Id: I930d239cd139b6202ebdfb5cdc8068ff2ad0b8a3
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
(cherry picked from commit 3e838f2a34)
2019-06-10 10:07:20 +00:00
Heikki Halmet
0660a25cca Provisioning: Make gnuwin32 available for windows machines
This script will install gnuwin32 to the windows machines so it can be
removed from qt5

Task-number: QTBUG-73422
Change-Id: I40b7963efcf047525626fe6f1e3ba50b54d68199
Reviewed-by: Juha Karjalainen <juha.karjalainen@qt.io>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-03-17 08:16:25 +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
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
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
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
Simo Fält
d0d326dddd Replace MinGW 5.3.0 with 7.3.0
Task-number: QTQAINFRA-1289
Task-number: QTQAINFRA-1389
Change-Id: Ic6f637170cd4b98ece45811e66dbb21dc3ee66e3
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2018-08-26 19:16:55 +00:00
Liang Qi
c6d9e433df Merge remote-tracking branch 'origin/5.11' into dev
Conflicts:
	coin/provisioning/qtci-linux-RHEL-6.6-x86_64/30-install_icu.sh

Change-Id: I00d0ccd138eb8d89e30e7e57632c6fc8f83e0001
2018-07-02 13:12:35 +02:00
Simon Hausmann
0a2b499cca Remove unused libclang installations
We don't need to install the MinGW builds of libclang 6.0 for
configurations where the Qt MinGW build can't use them.

Task-number: QTBUG-68064
Change-Id: Id9183ccfc15a7a81edb67df371075d584e5cbae8
Reviewed-by: Simo Fält <simo.falt@qt.io>
2018-06-29 13:37:38 +00:00
Liang Qi
0a2465bc30 Merge remote-tracking branch 'origin/5.11' into dev
Change-Id: I7502e49bc75f84b7fb2d4534181a2082fc939265
2018-05-30 21:19:11 +02:00
Maurice Kalinowski
b317ad8096 Remove hardcoded download path
Previously all files got downloaded to a hardcoded path, including the
username for the CI machines. Usually, it does not fit the username of a
local development machine, complicating to reproduce bugs.

Introduce Get-(Default)DownloadLocation functions in helpers to
specify the default download location. This helps to run the
provisioning scripts on a local machine.

Change-Id: I761a92bf5e3e774358756a95dddb9a5d6ee54db9
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
2018-05-25 10:25:55 +00:00
Maurice Kalinowski
d9fcbde41d Provisioning: Install Open62541 on Windows
Open62541 is one of the supported OPC UA backends in the Qt OpcUa
module.

Change-Id: I9baaffbae058d0590819e248694ee41887558708
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2018-05-25 06:45:00 +00:00
Heikki Halmet
e3699c5a6f Add missing sw versions to versions.txt
Change-Id: Ifa12b6c6308e4ad73989e7e935061f77ae1823e2
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2018-04-29 13:21:01 +00:00
Joni Jantti
5d7972b73b Provisioning: Windows - Disable autoreboot
Windows machines currently reboot automatically in case of a blue
screen crash. This must be disabled to prevent problems with Coin.

Task-number: QTQAINFRA-1748
Change-Id: I64ac1cfa124694fab356b8443298c1b37bed9a92
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2018-03-18 16:22:17 +00:00
Joni Jantti
95609c6657 Provisioning: Executequeueditems on Windows
mscorsvw.exe background processing is draining a lot of
CPU processing on Windows platforms. Executing the list
of to be processed items with full CPU capacity should
clear out the list and stop the background processing.

Task-number: QTQAINFRA-1775
Change-Id: Ib12bc10f4572390f20bfea915ca48ec398de46ee
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2018-03-08 19:27:11 +00:00
Jani Heikkinen
52b163092a Add missing 08-libclang.ps1 for windows7 provisioning
We need to set LLVM_INSTALL_DIR to be able to build qdoc. That was
missing from windows7.

Task-number: QTBUG-65950
Change-Id: I7f75eb0181056a2117080ead6dc5862324906689
Reviewed-by: Simo Fält <simo.falt@qt.io>
2018-03-01 07:17:27 +00:00
Oliver Wolff
cb6709ce5c Unify Windows provisioning scripts & improve error handling
While Coin should also see exit codes != 0 as error, we should
stick to one way of handling script errors. As Power Shell cmdlets
signal an error by throwing an exception we should do the same
(and that approach also works in Coin).

Additionally extracting 7zip files was unified across scripts by
using the existing helper function instead of reinventing the wheel
again and again.

A similar helper function was introduced for starting an external
application (and handling its errors).

Also echo and other "cmd" commands were replaced by their PowerShell
equivalents to have a unified approach across our Windows provisioning
scripts.

Change-Id: I70129ce38692f1396c33c13b33a2918485fa5271
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
2018-02-26 19:52:45 +00:00
Tony Sarajärvi
54d8396d68 Set proxy on Windows VMs while provisioning
Task-number: QTQAINFRA-1669
Change-Id: Ia6b5b668051642a3729d7c7c83c69d8797045847
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2018-02-23 21:00:11 +00:00
Liang Qi
0e4931a8af Merge remote-tracking branch 'origin/5.10' into 5.11
Change-Id: I3b299786e8500b0a8f2c197f7501f8e6e1cf29cf
2018-02-04 15:30:50 +01:00
Liang Qi
4cd14f4625 Merge remote-tracking branch 'origin/5.9' into 5.10
Change-Id: I3e4ae2508d632919db77af0f365eb25ace1a69e0
2018-02-03 11:08:26 +01:00
Joni Jäntti
1583fbd2bb Add Win7_x64 provisioning for RTA purposes
Windows 7 x64 (Windows 7 msvc2013-x86_64) template
is needed since RTA is starting to deploy machines
from coin.

Task-number: QTQAINFRA-1521
Task-number: QTQAINFRA-1615
Change-Id: I7e9665bd37ee010a59ff3792f435d65eb9ad8c17
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Reviewed-by: Johanna Äijälä <johanna.aijala@qt.io>
2018-02-02 07:14:35 +00:00
Frederik Gladhorn
a434f14bd9 Merge remote-tracking branch 'origin/5.10' into 5.11
Conflicts:
	coin/provisioning/common/linux/qnx_700.sh
	coin/provisioning/common/windows/libclang.ps1

Reviewed-by: Liang Qi <liang.qi@qt.io>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Change-Id: I7fe1337fb8a575083e8b649d1a051abc82e3b408
2018-01-29 14:06:05 +01:00
Frederik Gladhorn
485244b016 Merge remote-tracking branch 'origin/5.9' into 5.10.1
This was pushed directly, bypassing codereview.qt-project.org to get
provisioning back into a working state.

Change-Id: Ia5d2e6f7079162f571cd7c7994c0f2b3133b1163
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2018-01-29 13:34:28 +01:00
Heikki Halmet
462a2aae2b Provisioning: Add Squish provisioning for Release Test Automation
Squish is required by RTA for testing.

Task-number: QTQAINFRA-1523
Change-Id: I0c3653565f19cc9b798a0b63325c47b017cf5537
Reviewed-by: Joni Jäntti <joni.jantti@qt.io>
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
2018-01-26 13:12:51 +00:00
Liang Qi
c2d188f225 Merge remote-tracking branch 'origin/5.10' into dev
Conflicts:
	coin/platform_configs/default.txt
	coin/platform_configs/qt5.txt

Task-number: QTBUG-65688
Change-Id: I17a303731dab4b967c9ef8a852ee0c1097b88f10
2018-01-12 21:13:56 +01:00
Liang Qi
19872ea843 Merge remote-tracking branch 'origin/5.9' into 5.10
Fixed up provisioning script locations after the reshuffeling into
common/platform folders.

Change-Id: Ia0b7d076e475ccc207f2955572fb9ab4171e5d9d
2018-01-11 15:13:13 +01:00
Heikki Halmet
2a28ce864b Split Common folder based on operating system families
This change will split common folder to four different folders:
Linux, Unix, Windows and MacOS. Each of these folders includes scripts
which are common for their operating system familes

Task-number: QTQAINFRA-1451
Change-Id: Ic93b2183052335dee875d1452b21e38d268b6474
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
2018-01-10 07:58:26 +00:00
Tony Sarajärvi
84899eca4c Consolidate prefixes of provisioning scripts
Change-Id: I75a4bcb049a2c4d034a74b6838ffe7ddf2c3015e
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2018-01-07 15:20:34 +00:00
Liang Qi
2a39f8e5fe Merge remote-tracking branch 'origin/5.9' into 5.10
Change-Id: I7119e6e1853b0eef2b695fb8165518e90b18d250
2018-01-06 09:08:20 +01:00
Joni Jantti
19f8a741f3 Make provisioning script prefix style match across platforms
Currently we are using different styles and amount of digits for the
provisioning script prefixes. This change will unify them across the
platforms. Also removes a couple of duplicate files.

Task-number: QTQAINFRA-1668
Change-Id: I039777e7616bccc29c6a4ac55db13326ae8dc87c
Reviewed-by: Joni Jäntti <joni.jantti@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
2017-12-29 13:16:40 +00:00
Tony Sarajärvi
357de3ea13 Drop QNX 6.6.0 verification from the CI
Task-number: QTQAINFRA-1378
Change-Id: Icc5fb21b6430c916ceecb8d5a504d40938931b06
Reviewed-by: Simo Fält <simo.falt@qt.io>
2017-12-27 11:29:31 +00:00
Liang Qi
475fc2c2ad Merge remote-tracking branch 'origin/5.9' into 5.10
Conflicts:
	.gitmodules

Change-Id: If22ccc401db60d550d6e6b474d54a05b363884af
2017-12-13 23:28:56 +01:00
Joni Jantti
1dee4e9fca Fix broken and duplicate Ruby provisioning
Ruby is being installed twice on certain Windows platforms and the 32
bit versions of these don't have a working PATH addition.

Task-number: QTQAINFRA-1632
Change-Id: Id7fd269854d17c32df7d0b82ac9e750e645af564
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2017-12-13 19:41:24 +00:00
Liang Qi
c2c45640e0 Merge remote-tracking branch 'origin/5.9' into 5.10
Conflicts:
	coin/platform_configs/qt5.txt
	coin/provisioning/common/install-commandlinetools.sh
	coin/provisioning/qtci-linux-RHEL-7.4-x86_64/004-install-packages.sh

Change-Id: I3b20cda2b35412fd708295e4f9e32cd2d7d638fb
2017-12-09 23:09:15 +01:00
Joni Jantti
828f82b6f0 Add missing name prefixes for Win7 provision scripts
The prefix numbers were missing for Ruby and QNX patch scripts.

Change-Id: I687b244c4657e17c32f0cc8221d3fb0ad3c5578d
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2017-12-09 18:48:26 +00:00
Liang Qi
062b29b311 Merge remote-tracking branch 'origin/5.9' into 5.10
Change-Id: Iac3073d85bd94d27c296b307a827ee6bd97c4194
2017-11-16 23:14:25 +01: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
Liang Qi
90272a84ae Merge remote-tracking branch 'origin/5.9' into 5.10
Also update to pyro toolchain in QEMU way.

 Conflicts:
	coin/platform_configs/default.txt
	coin/platform_configs/qt5.txt
	coin/platform_configs/qtdeclarative.txt
	coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/004-yocto.sh

Done-with: Sami Nurmenniemi <sami.nurmenniemi@qt.io>
Task-number: QTBUG-64384
Change-Id: If0451b81059e6831a5e5df0f359f119caf4ee09d
2017-11-09 14:05:56 +01:00