Commit Graph

61 Commits

Author SHA1 Message Date
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
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
Liang Qi
cc4fdea014 Merge remote-tracking branch 'origin/5.14' into 5.15
Conflicts:
	.gitmodules
	coin/platform_configs/qt5.yaml
	coin/platform_configs/qtsdk.yaml
	coin/platform_configs/tqtc-qt-rta.yaml
	coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/02-apt.sh

Change-Id: I2221262edc024e0aa11b9dab4d08c2df3a0b53b0
2020-04-24 15:31:01 +02:00
Rami Potinkara
08b99e8def qdb building for mac
Modified qdb.yaml and created and pkgconfig and libusb relates .sh
files so that QDB can be build for Mac OS due to USB Ethernet CDCECM enabling.

Task-number: QTBUG-82531
Change-Id: Ia5f970e5940b7d9116831c8174db0ea1b9231234
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
2020-04-15 08:28:12 +03: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
d757c6d0ec Try to catch all errors when sdkmanager installs
Task-number: QTQAINFRA-3531
Change-Id: I008c31a824287c60e67a665d0c2a3aebec863929
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2020-02-15 07:39:06 +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
Liang Qi
63c515a6cb Merge remote-tracking branch 'origin/dev' into wip/cmake
Also update the Windows config to use MSVC2019 instead of 2017
to circumvent the issue that vcpkg is building libraries with the
latest compiler it finds (MSVC 2019), but Qt is building with 2017.

 Conflicts:
	coin/platform_configs/default.yaml
	coin/platform_configs/qt5.yaml
	coin/platform_configs/qtsaferenderer.yaml

Change-Id: I88deb114e171046b50fc617ab6bc18b707d61486
2019-11-28 19:44:30 +01:00
Heikki Halmet
601a9d39b2 Provisioning: Install python modules needed by packaging
Needed by packaging scripts

Task-number: COIN-214
Change-Id: I3ac719800c3afd183996379f6c23fbe3f8bcf7cb
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
2019-11-20 08:07:58 +02:00
Simon Hausmann
c85543f88d Merge remote-tracking branch 'origin/dev' into wip/cmake
Conflicts:
	coin/platform_configs/default.yaml
	coin/platform_configs/qt5.yaml
	coin/platform_configs/qtbase.yaml
	coin/platform_configs/qtdeclarative.yaml
	coin/platform_configs/qtsaferenderer.yaml
	coin/platform_configs/qtsdk.yaml
	coin/provisioning/common/linux/cmake_linux.sh
	coin/provisioning/common/windows/cmake.ps1

Change-Id: I37bb513e3be19e4de4003679f8528677e57c09ee
2019-11-11 10:52:16 +01:00
Liang Qi
68189ab965 Merge remote-tracking branch 'origin/5.13' into 5.14
Conflicts:
	coin/provisioning/qtci-macos-10.12-x86_64/05-systemsetup.sh

Change-Id: Ie9eae2144868cbe4a6c5ff9472c1a0e8fd53ed08
2019-11-06 14:19:45 +01: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
eb0ef419ec Add allowUntrusted parameter for command line tools and refresh Xcode
Apple has signed their packages with certificate which has been
expired 24.11.2019. Packages are unusable without allowUntrusted
parameter

Also Xcode package for macOS10.13 needs to be refetched from
Apple's download to local cache

Task-number: QTQAINFRA-3317
Change-Id: Iebbe81ee0c360e5f0b49d422b38fe1a148424891
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-10-29 19:37:09 +02:00
Liang Qi
29befcc995 Merge remote-tracking branch 'origin/5.13' into 5.14
Conflicts:
	coin/platform_configs/default.yaml
	coin/platform_configs/qt5.yaml

Change-Id: I48b1e814dd6328dfb2827d0898a277b81ec25e55
2019-10-01 11:37:07 +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
Dimitrios Apostolou
b97df21bef Brew update only once
Change-Id: I6c2650574b6b62ceedfc95a9caab7ca26a6fa10b
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-09-26 20:12:15 +02:00
Liang Qi
44073f5563 Merge remote-tracking branch 'origin/dev' into wip/cmake
Conflicts:
	.gitmodules
	coin/platform_configs/default.txt

Change-Id: I78eb6b6522c678fb40f1202c0040c1c87ff890a6
2019-09-23 16:38:06 +02:00
Liang Qi
01ad208333 Merge remote-tracking branch 'origin/5.13' into 5.14
This change partially reverts 24f0367a60.

 Conflicts:
	coin/platform_configs/default.yaml
		SLES 12 got removed temporarily.

Task-number: QTQAINFRA-2851
Change-Id: Ib12a6e5ced3c89a5c8c9c2b1548a1c9d23d159d9
2019-09-13 13:04:25 +02:00
Liang Qi
f58935ebea Merge remote-tracking branch 'origin/5.12' into 5.13
Conflicts:
	coin/platform_configs/default.yaml
	coin/provisioning/common/linux/disable-ntp_linux.sh
	coin/provisioning/qtci-linux-SLES-12-x86_64/55-emsdk.sh
	coin/provisioning/qtci-linux-SLES-15-x86_64/55-emsdk.sh
		emsdk.sh was moved from linux to unix, see
		38e416be66

Change-Id: I5b06dde2860a4e4869960ae2a5be1d6a1396e957
2019-08-28 20:28:11 +02:00
BogDan Vatra
9dd4451234 Android: Update Android NDK to version r20
Fixes: QTQAINFRA-3152
Change-Id: Ieee56346dd4e29754f259d71465edc8c2a0db2e5
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
2019-08-22 06:55:47 +02: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
Liang Qi
a94696ccd5 Merge remote-tracking branch 'origin/5.12' into 5.13
Conflicts:
	.gitmodules
		ignore QtWebEngine on QEMU temporarily.
	coin/platform_configs/default.yaml
		no-gui build was removed temporarily.
	coin/platform_configs/qt5.yaml
	coin/platform_configs/qtbase.yaml
	coin/platform_configs/qtconnectivity.yaml
	coin/platform_configs/qtsaferenderer.yaml

Task-number: QTQAINFRA-2576
Task-number: QTBUG-77304
Task-number: QTBUG-77305
Done-With: Tony Sarajärvi <tony.sarajarvi@qt.io>
Change-Id: If7cf75791677eace762374b92382a2ce15f17f55
2019-08-03 00:02:43 +02:00
Juha Karjalainen
38e416be66 Add webAssembly build for windows and macos
Provision emsdk and its dependecies to windows and macos.

Task-number: QTBUG-63917
Task-number: QTQAINFRA-2835
Done-with: Juha Karjalainen <juha.karjalainen@qt.io>
Change-Id: I24ea9cbc4f7cc95e6952765099d5e46247470011
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2019-07-31 09:44:53 +03:00
Jędrzej Nowacki
36d634a7dd Fix paths when installing cmake on macOS
This ammends d44a7a5f14.

Change-Id: I8e8644a1f8677e6e62fb6356cc6c3533ec40e454
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
2019-06-06 07:38:52 +00:00
Liang Qi
aabcc8128c Provisioning: Add ninja to the list of installed packages
Change-Id: I018e7812fc95c1db841720294a700a391246251d
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2019-05-24 09:58:03 +00:00
Liang Qi
cb860d794d Provisioning: Add freetype to the list of installed packages on macOS
Change-Id: Ic2df763fc027e3a588723a37a70354d3becc29a6
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2019-05-03 08:36:57 +00:00
Liang Qi
705696e1d1 Provisioning: Add pcre2 to the list of installed packages
This external dependency is now required by QtCore on macOS.

Change-Id: I4eef98e8e54f00861c1e9469dfbac61979d652e8
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2019-05-03 08:36:45 +00:00
Liang Qi
8b0a10d1c1 Provisioning: build cmake from source on macOS 10.13
Change-Id: Ifada0cf62d1e75e8cab3e3bbe6250718747d0703
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2019-05-03 08:36:42 +00:00
Heikki Halmet
5db0ce74b7 Provisioning: Update QNX 7.0 packages
Updated packages includes QNX Multimedia Suite 2.0,
which enables building QtMultimedia QNX plugins

Task-number: QTBUG-71073
Change-Id: Iaf7cabfe1dc59441abb978c261590c41f7aa0cdc
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
2019-04-24 13:27:06 +03:00
Juha Karjalainen
3e838f2a34 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>
2019-05-22 15:34:04 +03:00
Heikki Halmet
dbaa42baa7 Provisioning: Use ANDROID_NDK_ROOT instead of ANDROID_NDK_HOME
Without this binaries will be hardcoded to look in e.g
/opt/android/android-ndk-r19b which means that RTA tests will fail

Task-number: QTBUG-74952
Change-Id: Ic2b1297e15d905f2250333b6bc884abe2f1472d4
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-04-23 06:04:34 +00: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
a2b1dd2d0a Provisioning: Use ANDROID_NDK_ROOT instead of ANDROID_NDK_HOME
Without this binaries will be hardcoded to look in e.g
/opt/android/android-ndk-r19b which means that RTA tests will fail

Task-number: QTBUG-74952
Change-Id: Ic2b1297e15d905f2250333b6bc884abe2f1472d4
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
(cherry picked from commit dbaa42baa7)
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2019-06-10 10:14:57 +03:00
Heikki Halmet
608788de2d Provisioning: Update Android NDK to version r19
Also let's start using 64-bit Android NDK for Windows

Task-number: QTQAINFRA-2568
Change-Id: I2d757aa9e43abf5118abad7bf644e17e88a2ca94
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
(cherry picked from commit c09135cb56)
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2019-06-10 10:14:57 +03:00
Juha Karjalainen
94d140b746 Log more version information on macOS provisioning
Logs more version information to make easier to reproduce build.
Logs macOS build version, homebrew installed packages and apple's
installer installed packages.

Change-Id: Ia9f2842a3fd2e8e0acf1667c7435a19c7a878aed
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-05-12 15:47:26 +00:00
Liang Qi
8710c7d9cf Merge remote-tracking branch 'origin/5.12' into 5.13
Conflicts:
	coin/platform_configs/qt3d-runtime.txt
	coin/platform_configs/qt5.txt
	coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/04-yocto.sh
	coin/provisioning/qtci-macos-10.13-x86_64/30-android.sh

Change-Id: Ie428600c72b7fe4d7b5fa7583e11aebd47cfb85e
2019-04-13 11:38:39 +02:00
Tony Sarajärvi
b2afcc8405 Fix shellcheck complaints from provisioning scripts
Change-Id: I8d1ee4241d7e99269e8c717ceb2aecde3194c51a
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2019-04-01 15:16:59 +00:00
Tony Sarajärvi
f678ae3769 Fix soft links and file modes of a few macOS provisioning scripts
Change-Id: I1d4d09424aa2ce0b75d840a2c26cbfed99740d0c
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2019-04-01 15:16:52 +00:00
Heikki Halmet
c09135cb56 Provisioning: Update Android NDK to version r19
Also let's start using 64-bit Android NDK for Windows

Task-number: QTQAINFRA-2568
Change-Id: I2d757aa9e43abf5118abad7bf644e17e88a2ca94
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-04-01 11:42:49 +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
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
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
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
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