Commit Graph

595 Commits

Author SHA1 Message Date
Dimitrios Apostolou
869a9b3ae7 Fix shell function is_script_executed
It used to return error when tested inside a login shell, because $0 is
"-bash" and `basename` was trying to interpret -b as an option.

Change-Id: I5faa2dc01e50c7d5bcfc0ab1fcfd910b2538afc2
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2019-10-08 08:26:34 +02:00
Dimitrios Apostolou
d97d1af1ee Fix provisioning script for RHEL 6
It seems RHEL 6.6 does not provide /etc/os-release.

Change-Id: I01ba2bb17b89c01f9991944a11eeaa9c2eba6f20
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2019-10-08 08:26:34 +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
cfef857815 Reduce noise in the provision logs
Reduce verbosity in order to shorten logs and make them more readable.

In two cases we just remove the verbose flag.

In one other case we undo inlining of a huge script in the command line.
Because we run the provisioning scripts in trace mode, this caused the
script to be logged, and it was rather long and meaningless since it
comes from an external project.

Change-Id: I078ee3b3ab2db9425204375deb5815b6526a4466
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-10-01 06:11:48 +02:00
Dimitrios Apostolou
4e3a0f79fb DownloadURL now works with either wget or curl
The reason is that Ubuntu does not have curl at the very beginning of
provisioning scripts, and also does not have the repositories configured
in order to install it.

Change-Id: Ia485c1672f894bc800f199b742d238b2945938e5
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2019-09-27 08:42:49 +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
c0fce7a3b3 Refactor DownloadURL.sh
Auto-detects and verifies all kinds of hashes, not only SHA1.
Hash verification is now an autonomous function.
If the file is found at the destination, skip redownloading it if the
hash is OK.
Runs on POSIX sh, not requiring bash.
Retain compatibility with previous version.

Change-Id: I9930336030aa776f49dc460fe766f3e831700255
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-09-26 20:12:31 +02:00
Dimitrios Apostolou
c7f87acb37 Do not silence standard error
Provisioning was failing and the logs did not provide any useful
information because of the silenced squish install command. So I went
through all the scripts and I re-enabled stderr logging where I found it
silenced (with the exception of where it was purposeful or harmless).

Change-Id: I5fa0b0ba4362970b214c150d399b6720b1780e1e
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-09-26 20:12:25 +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
Dimitrios Apostolou
bdc5dae67b Speed up provisioning on Linux
Change-Id: I6e4e5621ed0b063215476ef51d61ef1f38198d0c
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-09-26 20:12:11 +02:00
Dimitrios Apostolou
e6fccbf240 Remove the progress bar from the sdkmanager output
Cleans up many thousands of useless lines from the logs.

Change-Id: I2673f65b713996637d2161da4db726823e17c0df
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-09-26 20:11:56 +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
Heikki Halmet
0cf3fdabe3 Provisioning: Upgrade Python pip version for Windows machines
Task-number: QTQAINFRA-2564
Change-Id: I10402bb3169b483c71e44db7ecba443eb4f46dc1
Reviewed-by: Liang Qi <liang.qi@qt.io>
2019-09-17 08:57:18 +00:00
Heikki Halmet
a3136bdbfe Provisioning: Disable or delete unneeded tasks and services
Windows have lot's of tasks and services running which are slowing
the performance of build machine. Also 'windows' and 'windows
defender' updates need's to be "permanently" disabled.

Task-number: QTQAINFRA-3182
Change-Id: I8f6b237fcdc6e38fa9a06836d349821d86c58afc
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-09-17 11:57:11 +03: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
1bb7d2d0c9 Merge remote-tracking branch 'origin/5.12' into 5.13
Change-Id: Iffcf9b199df17a50acf03e29b9deae033396dfcb
2019-09-09 20:57:09 +02:00
Assam Boudjelthia
0d273deeef Provisioning: Fix version of libiodbc on MacOs
libiodbc latest version (3.52.13) was automatically installed causing
qt-config-gui to fail build, this installs version 3.52.12.

Task-number: QTQAINFRA-3188
Change-Id: I5b87ff04c2301a5471cc9abfa0849b6073a1bdd4
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-09-06 06:05:40 +00: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
Liang Qi
9a8fb868ec Merge remote-tracking branch 'origin/5.13' into dev
This reverts commit d494d76c26.

 Conflicts:
        coin/platform_configs/default.yaml
                Temporarily remove the -no-opengl build.
        coin/platform_configs/meta-boot2qt.yaml
        coin/platform_configs/qt5.yaml
                Temporarily remove the webassembly build on windows.
        coin/platform_configs/qtwebkit.yaml

Task-number: QTQAINFRA-2577
Task-number: QTBUG-63917
Task-number: QTQAINFRA-2835
Done-With: Samuli Piippo <samuli.piippo@qt.io>
Change-Id: Ia7972b481a5ce33febe26c6589db24578614b2fd
2019-08-20 14:10:00 +02:00
Tony Sarajärvi
8e32f46764 Add Suse Linux Enteprise Server 15 to the CI
Task-number: QTQAINFRA-3123
Change-Id: I725c58c7d319945f7470118dec99b5360385da7b
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2019-08-14 03:45:39 +00:00
Tony Sarajärvi
24f0367a60 Add Suse Linux Enteprise Server 12 to the CI
Task-number: QTQAINFRA-2851
Change-Id: Ia421a5e35f8a0515d7f761ca0c52a54a93dcee5c
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2019-08-13 11:03:52 +00:00
Simo Fält
d19f60d745 Provisioning: Append the emscripten to path instead of prepend
Having it first in path seems to cause some confusion when detecting
libc++ in darwin.

Change-Id: I841e7f169e4771d3818cf156d9d78fc242e9995c
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2019-08-12 21:01:55 +00:00
Liang Qi
58977376e1 Merge remote-tracking branch 'origin/5.12' into 5.13
Change-Id: Ie49f7e5ff9ca02522c6611922b47870aba2c152e
2019-08-04 11:51:40 +02: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
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
Konstantin Tokarev
125c5e6528 Provisioning: update conan_manifests for libxslt packages
Package recipe was improved, as a result packages were rebuilt and
checksums need update.

Change-Id: I33bd30b44cbe48b3550cb42eeb995ef8588fcce7
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2019-08-01 14:24:56 +03: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
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
4bf0ba2ba1 Provisioning: Add CompilerException and CompilerThreads settings for Conan
Change-Id: I3a52101056bce4d3d4ac9124dbfd566adf47cf80
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2019-07-26 19:52:37 +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
Konstantin Tokarev
535dbcfe96 Conan: Suppress output of New-Item
Change-Id: I3d62fffa08d38a383187726e08743512236bb859
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2019-07-26 19:52:18 +03:00
Konstantin Tokarev
f12c226463 Provisioning: install-msys2.ps1 must run its commands synchronously
[*] Using bash instead of msys2_shell.cmd allows Start-Process to actually
    wait for the end of command execution.
[*] cpan requires "yes" to be typed by user when it's run first time,
    otherwise it hangs indefinitely waiting for input.
[*] Stop gpg-agent and dirmngr started in the background to prevent
    CI session from hanging.

Change-Id: I4d4c1f36d215cb7578d1e7059217e34375de96c6
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2019-07-26 07:50:43 +03:00
Konstantin Tokarev
22c427b369 Use msiexec to install Strawberry Perl from msi package
Currently provisioning fails with following error:  "This command cannot
be run due to the error: %1 is not a valid Win32 application."

Change-Id: I59290d394f231c37af10f27d07dbb9f5d2d2470a
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2019-07-26 07:50:41 +03:00
Konstantin Tokarev
645bd71404 Provisioning: Run-Executable should print stdout and stderr to log
Task-number: QTQAINFRA-3085
Change-Id: I5343753f75157a2a894bb3ac50d416ab044d86fb
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2019-07-26 07:50:38 +03:00
Konstantin Tokarev
cb8d38fd9c Provisioning: don't re-run Conan 5 times if there is no error
Change-Id: Ia348ebbc4fc3a2503cc426c011e68b7a410c4a08
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2019-07-26 07:50:35 +03:00
Sona Kurazyan
e4b596fcfe Add the docker images for CoAP test servers
This change includes:
- Docker image for the test server to test non-secure and PSK-based
  CoAP security modes.
- Docker image for the test server to test X.509 certificate-based
  CoAP security mode.

Change-Id: Ice661917591ecaee8ebc3500209bcffc08981f65
Reviewed-by: Ryan Chu <ryan.chu@qt.io>
2019-07-07 11:36:16 +02:00
Liang Qi
a319bc5f5f Merge remote-tracking branch 'origin/5.13.0' into 5.13
Change-Id: I97c42bef6632a4aeccefab008e0f615f7a9e9f78
2019-07-05 20:05:17 +02:00
Ryan Chu
d49ae7020c Revert "Revert "Provisioning: disable docker test servers on Windows 10 (x86_64)""
This reverts commit 84ff024609.

Reason for revert: <Some VM crashed again when running docker tests>

Change-Id: Iad753c1c4728c6eddc53816e2c51947ce724bf6b
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2019-07-05 08:43:14 +00:00
Simon Hausmann
9d7437859b Update vcpkg installation
Use the latest snapshot, fetch the package set from the repo itself and
set the VCPKG_ROOT environment variable as that's the vcpkg documented
interface.

The qt specific triplet defaults to static linkage, which allows
removing the %PATH% handling and resembles the same setup as in Qt 5
where we linked the 3rd-party code statically into qt.

Change-Id: I789d61b5c7258674c2dd80403efaeb891c8f75c7
Reviewed-by: Liang Qi <liang.qi@qt.io>
2019-06-21 11:59:42 +00:00
Heikki Halmet
644f8b7006 Fix openssl 1.1 library configurations
Change-Id: Idcb919e5f388b509e4215cf5515c8716490d5872
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>

(cherry picked from commit de41591477)
Change-Id: Ifbb5ecc4613319265a3378b60959fffc7301ae46
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2019-06-13 22:47:35 +03:00
Jędrzej Nowacki
2e5b5cc075 Update cmake sha1 for Windows
It amends a6d159c9e7. Seems that I
computed sha1 for a wrong file.

Change-Id: Ie524b2c825189a91cd6b809ff7991af20bd301b1
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
2019-06-06 13:54:00 +00:00
Jędrzej Nowacki
a6d159c9e7 Bump cmake to 3.15-rc1 on Windows
Same as for the recent Linux and macOS change.

Change-Id: Ic7ae30333f8cd58925f697c19ca046ceac49cd32
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2019-06-06 07:56:27 +00:00
Jędrzej Nowacki
7df4f93cb1 Fix provisioning of cmake on macOS
The script contains a bit of data duplication, one of the fields was
not updated.

This amends 463235a0bc.

Change-Id: Idb9e88eba1f1415a0ca29f2c3a003c8a844bb024
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
2019-06-06 07:39:02 +00:00
Simon Hausmann
463235a0bc Bump cmake to 3.15-rc1
Same as for the recent Linux change.

Change-Id: I073411bcfa8cbd692a7770cdaad3a368c6f7108d
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
2019-06-05 12:54:18 +00:00
Simon Hausmann
d44a7a5f14 Install cmake from binaries instead of from source
The from-source installation originates from a point in time where there
was no cmake release with binaries that were sufficient. That is not the
case with 3.15-rc1.

Change-Id: I385016969f21c194b25334e3af8af7283fc5873f
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
2019-06-05 12:47:18 +00:00
Jean-Michaël Celerier
086439b018 Upgrade CMake to 3.15.0-rc1
Change-Id: I374631637a6521621dfa702aa2390998ef124d24
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2019-06-05 09:21:01 +00:00
Ryan Chu
84ff024609 Revert "Provisioning: disable docker test servers on Windows 10 (x86_64)"
This reverts commit 577d01e9df.

Reason for revert: force vmx instructions to Coin level B virtual machine

Change-Id: I54a97fb6dc96315768c8047d487f1ed354ab4aac
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-05-31 07:30:23 +00:00