Commit Graph

39 Commits

Author SHA1 Message Date
Toni Saario
d1601aa0f9 Add conan to path
Change-Id: I90e028409f606a703fd9b567a221f3f946f11d61
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
(cherry picked from commit 32579bc3c4)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
2021-04-12 07:21:53 +00:00
Toni Saario
f5c5309067 Disable network LSO/TSO on linux and macOS VMs
LSO/TSO causes problems handling network packets and deteriorates the
network speed to below 1MB/s.

Task-number: QTQAINFRA-4241
Change-Id: Ib999035668eefe51d59715c9a18f42c9e3dfdf21
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
(cherry picked from commit db7926c715)
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2021-04-11 20:21:19 +00:00
Heikki Halmet
42ee3f18fe Provisioning: Install Nodejs using pkg instead of Brew
Openssl is one of Nodejs dependencies when installing it via
Homebrew which is causing issues with actual openssl source build during
provisioning

Task-number: QTQAINFRA-4402
Change-Id: I711c0f2bb7faebb3e5cbe2f415f34b2ac2d38a66
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
(cherry picked from commit 26c97222c1)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
2021-04-11 15:57:09 +00:00
Heikki Halmet
e67fa087db Provisioning: Install Conan package manager
Conan package manager is need for addtional libraries

Task-number: QTQAINFRA-4190
Change-Id: I5cb07a137505f15d536989c6d5127f607735a17e
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
Reviewed-by: Toni Saario <toni.saario@qt.io>
2021-01-26 14:15:15 +02:00
Simo Fält
b792fd56db Provisioning: Install libClang 10 with dynamic libs
As Qt uses only static archives of libclang, we have to install
dynamic version as an additional package. Libclang is required
for example QtForPython.

Pick-to: 5.15
Pick-to: 6.0
Change-Id: Ic9d70398113defe3561f261aee369b423c18686a
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2020-12-23 08:02:32 +02:00
Heikki Halmet
aee06febca Provisioning: Install Ninja binary
Install Ninja binary without using brew

Pick-to: 5.15
Pick-to: 5.12
Task-number: QTQAINFRA-3954
Change-Id: I2f50814e26e756bbf5cf3d74a4a1c5c00426ab4a
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Toni Saario <toni.saario@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2020-10-08 21:31:29 +03:00
Heikki Halmet
e3600116b3 Provisioning: Update Android ndk and build tools
Task-number: QTQAINFRA-3846
Change-Id: I5d3c0efce86e3b8bc3c6070ed4a9e438647bb955
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2020-09-08 14:52:22 +03:00
Jędrzej Nowacki
015c86534c Enable use of sccache in the CI
The sccache may significantly reduce build times.
We need to evaluate real cases to see how much is to gain.

This patch enables sccache only on cmake, exluding one msvc target
with debug flag -Zi, which creates separate debug symbols.
Related sccache issue:
  https://github.com/mozilla/sccache/issues/242

Task-number: COIN-130
Done-with: Aapo Keskimolo <aapo.keskimolo@qt.io>
Change-Id: Ic1f599c5194bcdee9528a548dabead1097821cd1
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2020-08-19 12:59:16 +03:00
Heikki Halmet
c1b06ec3e5 Provisioning: Renew iPhone signing tools
Task-number: QTQAINFRA-3434
Change-Id: I53665bf4e0799da7a23ba60aff37e26052d0374a
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
2020-08-14 09:39:03 +03:00
Liang Qi
029cabb729 Merge remote-tracking branch 'origin/5.15' into dev
Conflicts:
	coin/platform_configs/default.yaml
	coin/platform_configs/qt5.yaml
	coin/provisioning/qtci-linux-SLES-15-x86_64/02-zypperpackages.sh

Change-Id: I57f8a62c4f146cd1eda26885ce1507c072cb107f
2020-07-02 11:22:30 +02:00
Heikki Halmet
30714c7cb7 Provisioning: Install Node.js
Node.js is needed by QtWebengine

Task-number: QTQAINFRA-3729
Change-Id: I23ece8567c569d8376eff52b7845589c60d069b8
Reviewed-by: Toni Saario <toni.saario@qt.io>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
(cherry picked from commit 122cf4cc0e)
2020-06-10 20:50:30 +03:00
Heikki Halmet
122cf4cc0e Provisioning: Install Node.js
Node.js is needed by QtWebengine

Pick-to: 5.15
Task-number: QTQAINFRA-3729
Change-Id: I23ece8567c569d8376eff52b7845589c60d069b8
Reviewed-by: Toni Saario <toni.saario@qt.io>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
2020-06-09 20:58:09 +03:00
Liang Qi
c1c44574f6 Merge remote-tracking branch 'origin/5.15.0' into 5.15
Conflicts:
	coin/provisioning/common/linux/qnx_700.sh
	coin/provisioning/qtci-macos-10.13-x86_64/40-qnx700.sh
	coin/provisioning/qtci-macos-10.14-x86_64/40-qnx700.sh
	coin/provisioning/qtci-windows-10-x86_64/05-qnx_700.ps1

Change-Id: Ic7ed52251573824595821c53025323287d60b536
2020-05-28 10:22:03 +02:00
Heikki Halmet
16ca898568 Provisioning: Update QNX7 SDP to include OpenSSL 1.1.1
Still includes ICU 58

Task-number: QTQAINFRA-3537
Change-Id: I2f532ff32157e09eeec9a2196d075d4ec6347df5
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
2020-05-22 14:09:47 +03:00
Alexandru Croitor
3652f77aa3 Provisioning: Set macOS locale to "en_US.UTF-8"
The 419f42903154489e2dace8d1eba183036275448b commit in qtbase
introduced a regression where the tst_fusion test in qtqtuickcontrols2
hits a deadlock while trying to print a warning about a non-UTF-8
locale.

The warning is due to the fact that the agent executed in Coin's VM
does not have an explicit locale set, and thus it defaults to "C".
There is no explicit locale set in any .bashrc (or similar files),
and neither in any launchd configuration (because the agent is
executed at macOS startup via launchd).

The deadlock is due to trying to acquire the same lock twice while
trying to write output to stdout.

The test only deadlocks on CMake configurations, and not qmake
configurations, because Coin has a hardcoded instruction to set the
locale to UTF-8 when running qmake tests.

Until the deadlock situation is addressed in another change, the issue
can be fixed by setting the macOS configuration locale to UTF-8
explicitly, by assigning the LANG environment variable
into ~/.bashrc at provisioning time, like we do with other environment
variables like PATH.

Fixes: COIN-578
Change-Id: Ib6a5849a6868c1776dd425aeb8b5e7d6faa8cde0
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2020-05-07 21:52:16 +02:00
Heikki Halmet
71043ca243 Provisioning: Update expired QNX license
Task-number: QTQAINFRA-3708
Change-Id: Id2d6d10d88fc50c9985014c44df0b1cf51cc3410
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2020-05-04 14:41:54 +03:00
Liang Qi
54c94ae681 Merge remote-tracking branch 'origin/5.15' into dev
Conflicts:
	.gitmodules
	coin/platform_configs/default.yaml
	coin/platform_configs/qt5.yaml
	coin/platform_configs/qtbase.yaml
	coin/platform_configs/qtwebkit.yaml
	coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/02-apt.sh

Change-Id: If6b0f7a671a69d6a2444ee4d26b324e4d269970c
2020-04-30 18:35:08 +02:00
Heikki Halmet
61267a7a78 Provisioning: Remove notifications and warnings from macOS
Notifications and warnings in UI might affect RTA and autotests results

Change-Id: I447dab3ba839d2c577f633cbf96fc7f3e5fdfe25
Reviewed-by: Johanna Äijälä <johanna.aijala@qt.io>
2020-04-14 14:21:19 +03:00
Liang Qi
08e63423e2 Merge remote-tracking branch 'origin/5.15' into dev
Conflicts:
	.gitmodules
	coin/platform_configs/default.yaml
	coin/platform_configs/flashing-wizard.yaml
	coin/platform_configs/qt5.yaml
	coin/platform_configs/qtbase.yaml
	coin/platform_configs/qtconnectivity.yaml
	coin/platform_configs/tqtc-qt-config-gui.yaml
	coin/provisioning/qtci-linux-SLES-15-x86_64/02-zypperpackages.sh

Change-Id: I7af8a52d8b4452211982d86105dafacdd3d845c0
2020-02-28 13:49:10 +01:00
Dimitrios Apostolou
d84b366d55 Silence the sdkmanager progress bar on macos
The exact same method is already in use on all Linux provisions,
it was just copied to macos.

Change-Id: I873f6efd99b147c5364e0dda6c26c7dad7dee480
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2020-02-15 07:38:57 +01:00
Dimitrios Apostolou
c0033df4b9 Execute a specific version of homebrew install script
Also first try to download it from local mirror.

This install script appears to be doing a lot of git-cloning and downloading
itself though, so it is still far from the ideal solution: to only download
from locally cached endpoints.

Task-number: QTQAINFRA-3134
Change-Id: I32131045d6e62f302ec666b4ac055ca5ee9662d5
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2020-02-15 07:38:35 +01:00
Heikki Halmet
fd7bfcc0c5 Provisioning: Update signing tools for macOS
Update expired certificates

Task-number: QTQAINFRA-3540
Change-Id: I21e718901cb3f5c901273c0c122430f5caaea3d0
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2020-02-14 05:08:31 +02:00
Simon Hausmann
4d0a52ddbf Prospective fix for broken cmake builds on 10.14
Add missing dependencies that were there on 10.13.

Change-Id: I1d81e9f50a83486784bef02bf904e3e8c53c4f11
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2020-02-12 22:32:15 +01:00
Alexandru Croitor
431eb132a9 Provision Ninja for macOS 10.14 template
Change-Id: I62ad67561de3459fe1a09e645dcc9b40dd2dbb1d
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2020-02-12 13:11:03 +01:00
Heikki Halmet
9e834b7651 Provisioning: Update Xcode to 11.3 for macOS 10.14
Task-number: QTQAINFRA-3189
Change-Id: If16062254b33579b14f141d1db4aca2ad1e23afb
Reviewed-by: Liang Qi <liang.qi@qt.io>
2020-01-04 19:48:32 +00:00
Heikki Halmet
d8eaed9b09 Provisioning: Update Android NDK version to r20 for macOS 10.14
Task-number: QTQAINFRA-3337
Change-Id: Ib14e3cc484198bb23bb611262b205144f8a8ac70
Reviewed-by: Johanna Äijälä <johanna.aijala@qt.io>
2019-11-18 14:23:08 +02:00
Tor Arne Vestbø
6bf7a970e7 Use Xcode 11 on macOS 10.14
Fixes: QTQAINFRA-3261
Change-Id: Ibec6b156e030b2a1b91010321178612efc0bd06b
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-11-14 20:04:33 +00:00
Heikki Halmet
39a42f0abd Provisioning: Hide password with /dev/null
Change-Id: Ic60ba668764c928977c826e02686a0cd341b995f
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-11-02 19:41:50 +03:00
Heikki Halmet
52fe759eba Provisioning: Upgrade OpenSSL version to 1.1.1d
Plus removing unused file install_openssl_111a.sh

Task-number: QTQAINFRA-3224
Change-Id: If5f9ee12e118e0329eb27f8d3ca9829011874382
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-11-02 19:41:33 +03:00
Heikki Halmet
5b752460bc Provisioning: Update Xcode package for macOS 10.14
Apple's certification was expired so Xcode 10.2.1 package needs to be
updated from the Apple's download server. Old one causing problems with
RTA tests.

Task-number: QTQAINFRA-3317
Change-Id: I5006f95ab420e26523d2621800d80322a52bb9a2
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-11-02 18:41:24 +02:00
Dimitrios Apostolou
842b72e080 Move telegraf install to start of provisioning macos
Change-Id: Ied2b7a415abe5e101b6bfb60472b74070debe9e9
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2019-09-27 08:43:06 +02:00
Dimitrios Apostolou
89f6db8c22 Adjust pre-existing script to use the new common.sourced.sh
Change-Id: Icf7829d3499110a76b90679ba2d067f80d189e69
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2019-09-27 08:42:37 +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
Dimitrios Apostolou
b8eb110c81 Increase open files and processes limit on macOS
Change-Id: If93bbe067f76168a7c131c6ced187f00a8d908e1
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-09-26 20:12:20 +02:00
Heikki Halmet
ad93109d92 Provisioning: Add emsdk to macOS 10.14
Task-number: QTQAINFRA-3191
Change-Id: I46a72db63966804b33996d8bc3babe50cd2a41dd
Reviewed-by: Liang Qi <liang.qi@qt.io>
2019-09-09 08:35:24 +03:00
Heikki Halmet
30e7bf5745 Provisioning: Add Android NDK ROOT to environment variable
Task-number: QTQAINFRA-3181
Task-number: QTBUG-74952
Change-Id: I4cc6936c3b3eef32a1013888ced3950cd1f39407
Reviewed-by: Johanna Äijälä <johanna.aijala@qt.io>
2019-09-04 12:27:26 +03:00
Heikki Halmet
7fd2796b00 Provisioning: Update Android NDK version to macOS 10.14
Currently we are provisioning older Android NDK version than the one
used in macOS 10.13. Let's keep these sync even though we don't currently
make Android builds with macOS 10.14

Change-Id: I6c284d50bac395eb474c0f7e34cd90eda3f180c3
Reviewed-by: Johanna Äijälä <johanna.aijala@qt.io>
2019-09-04 12:27:09 +03:00
Heikki Halmet
61acd9e95d Provisioning: Update iOS signing tools
new apple id is required with notarization

Task-number: QTBUG-77359
Change-Id: I2aafda37d40608296d598b1d9ade83a025bcac8d
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
2019-08-19 13:31:38 +03:00
Tony Sarajärvi
9da27c5808 Add macOS 10.14 to the CI
Task-number: QTQAINFRA-2938
Change-Id: Id25c6c3203a07985c9ef1cc914c4398ac7db615c
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Liang Qi <liang.qi@qt.io>
2019-08-03 23:01:34 +03:00