Commit Graph

425 Commits

Author SHA1 Message Date
Konstantin Tokarev
049d760d9e Provisioning: update Conan and Conan packages to latest versions
Task-number: QTQAINFRA-3556
Change-Id: If9c600a6bb3aae893924f9372c8b248d3e58f887
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
(cherry picked from commit b73e61a458)
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
2020-02-23 10:58:59 +00:00
Dominik Holland
bac8689d01 Provisioning: Update jinja2 to 2.10.3
This makes sure we don't run into CVE-2019-10906 when using
jinja2 in QtIvis Autogenerator.

Change-Id: If51bf54bd26858c6b5faa3dd6a6627f2979b862d
Reviewed-by: Robert Griebl <robert.griebl@qt.io>
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
(cherry picked from commit 7b4b2f86a0)
Reviewed-by: Dominik Holland <dominik.holland@qt.io>
2020-02-23 10:58:55 +00:00
Dimitrios Apostolou
33d2547817 Keep debug trace off to avoid polluting the logs
Change-Id: I8a2d878a52b5e0a818d7f80fff495feca84d0e9c
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-11-14 08:46:20 +01:00
Dimitrios Apostolou
a270bcdb6b Docker installation: do not depend on external repositories
Also updated the docker-compose binary to the latest one.

Task-number: QTQAINFRA-3279
Change-Id: Ie09a772ca8247aa5f5bd6d36774b68b6bb846386
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-11-14 08:46:18 +01:00
Dimitrios Apostolou
fafd3d655d Fix cache URL for telegraf windows package
Fixes: QTQAINFRA-3340
Change-Id: Ie7bad3666094e3f8f8e8971c2bfe05457ca6cd45
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2019-11-14 08:46:16 +01:00
Dimitrios Apostolou
6cc2215b8c DownloadURL last argument (targetFile) is now optional
Change-Id: I0864bcb052cddcc9753c056758b6e65fd561d928
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-11-14 08:46:14 +01: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
Tony Sarajärvi
2eab420e80 Remove more of update notifiers
Change-Id: I507f584ef82b5f41f6b1cbc22fdd4ff6eff5e911
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2019-11-01 08:14:27 +00: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
Tony Sarajärvi
17550319e5 Provision gnuwin32's path
By provisioning the path to gnuwin32, we can remove the
hard coded paths from Coin.

Task-number: QTBUG-73422
Change-Id: Ice96fcd992e22ed39b66496403b9eaa99a6865a0
Reviewed-by: Toni Saario <toni.saario@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2019-10-26 14:10:50 +00: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
518e114dc7 Fix for DownloadURL to try alternative URL
Change-Id: I7e9a77815ef8f4c258dda44bda6fdd4eb3736ef4
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2019-10-15 12:41:04 +02:00
Heikki Halmet
3f9673d109 Provisioning: Update Cmake to version 3.7.2
QtCreator requires Cmake minimal version to be at least 3.7.0

Task-number: QTQAINFRA-3272
Change-Id: Id7f2d38ad0581c1aead4b5bac860ac193488ae1b
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2019-10-15 13:40:55 +03:00
Heikki Halmet
d02f0a913e Provisioning: Hide windows squish installation output from the log
This will prevent the output of unwanted information

Change-Id: I5f1824a6bbe98c673ef04dc2daa0db0536d27828
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-10-09 11:50:32 +03:00
Heikki Halmet
e4ae752c0d Provisioning: Make sure that Configure and Make will pass
During powershell process error is not caught and provisioning
continues even if the exitcode is something else that '0'

Task-number: QTQAINFRA-3214
Change-Id: I91116a78d0c4defe6ba4287913c2394e199be958
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2019-10-09 11:50:32 +03:00
Dimitrios Apostolou
dd9a3883aa Ensure provisioning works even without the secrets
Change-Id: I3869e881341a719da8a351095c3bf314c2fa2f34
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2019-10-08 08:26:34 +02:00
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
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
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
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
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
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