Commit Graph

595 Commits

Author SHA1 Message Date
Dimitrios Apostolou
b2d3df3553 Exclude monitoring of some filesystems on macos
For a short time after boot, macos sometimes mounts a filesystem of type
"msdos" at the unique path /Volumes/firmwaresyncd.XXXXXX.

Telegraf [inputs.disk] plug-in stores records to InfluxDB, with the unique
mount path under "path" tag. The uniqueness of the path blows up the
cardinality of the database.

So exclude "msdos" filesystems from being monitored by telegraf.  Additionally
exclude "cd9660" filesystems that appear always as 100% full.

Change-Id: I4cdd3fca57b3db6157df168cc8a5314e64528b2d
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2020-02-15 07:39:01 +01:00
Dimitrios Apostolou
150f6277e0 Update telegraf version
Change-Id: I1a023e4f1de860a03a135f3b10f2c99d5309dd8b
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2020-02-15 07:38:58 +01:00
Dimitrios Apostolou
27e42b7a3c Silence sdkmanager on Windows
sdkmanager is already silenced on the other OSes, as it prints thousands
of lines of progress bars in the logfiles.

Change-Id: I4a2aa422a83cfe5fc6a3a7ba7be69e1e9c01acc0
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2020-02-15 07:38:54 +01:00
Dimitrios Apostolou
47b74fb0ab Print filesystem information at the end of each provisioning
Change-Id: I549a917126954fae62dcdebb5c45a4f6aeb07551
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2020-02-15 07:38:52 +01: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
Dimitrios Apostolou
2693e482b6 Extract archive directly to destination filesystem
Save some seconds or even minutes during provisioning, by avoiding copying
many files across filesystems, from /tmp to /usr/local. We now install
directly to /usr/local.

Change-Id: I3a8f545f1400995095193c4eb337f9dd8534ef72
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2020-02-15 07:38:43 +01:00
Dimitrios Apostolou
fc2d0b5150 Create more meaningful temporary file names
Change-Id: I4bbc94993e51502ea08109a4c99f3e212349ab24
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2020-02-15 07:38:41 +01:00
Dimitrios Apostolou
b018b841c1 Do not complain about existing empty files
Sometimes we pre-create the target filename using mktemp. In that case of
course the hash will not match, so avoid comparing.

Change-Id: Id0feb0178d659e03f5ceb000f738167cdc28a3ec
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2020-02-15 07:38:39 +01:00
Dimitrios Apostolou
25fcda6ff3 Alias expansion is not working reliably in non-interactive shells
It happened that old bash version on macOS the alias was not being expanded
for non-interactive shells running under "bash" but was being expanded fine
when under "sh". Using functions is the recommended way.

Here we define a function conditionally.

Change-Id: I607b265cb9e88b2b529ed170121e5a0833003acd
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2020-02-15 07:38:37 +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
Dominik Holland
7b4b2f86a0 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>
2020-02-15 07:38:32 +01:00
Tuomas Heimonen
eb3d2ed68b Provisioning: Remove unistd.h from postreSQL from 64 bit Windows
PostreSQL 9.6 version creates emtpy unistd.h file which will cause
failure in Qt Safe Renderer' MinGW build. By removing it the system
should use the one from the MinGW environment.

Task-number: COIN-488
Change-Id: I76d3f34dd9726dc4f0aac06c410f306dffc8f365
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2020-02-02 10:57:42 +02:00
Heikki Halmet
e7cf4b21f1 Provisioning: Remove unistd.h from postreSQL
PostreSQL 9.6 version creates emtpy unistd.h file which will cause
failure in Qt Safe Renderer' MinGW build. By removing it the system
should use the one from the MinGW environment.

Task-number: COIN-488
Change-Id: Id7f2f5024998cc5fbeb61e144bcd87f6e09b2bb1
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
2020-01-28 17:07:16 +02:00
Heikki Halmet
5d027444b5 Provisioning: Update postgresql
Apparently libpq version 9.1.9 is no longer supported.
Let's use version 9.6 to keep maximum compatibility and align
the version with MacOS.

Task-number: QTBUG-79555
Change-Id: Iea98a1eb821f103e3a610ed602746407bfe5ea97
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2020-01-14 14:35:06 +02:00
Dimitrios Apostolou
fe4a724a3e Use internal mirror repositories for Ubuntu docker containers
Depending on different external URLs makes our provisioning scripts flaky,
because they can fail if any one of the external servers goes down.
In this patch

* the docker images qt_ubuntu_16.04 and qt_ubuntu_18.04 are being built first,
  they apt-get from the internal ubuntu mirror

* all the existing docker images have been rebased to these two images, so
  they inherit this behavior

* images that fetch files from the internet have been modified to not do the
  fetching themselves; insted URLs are fetched in advance using "DownloadURL"
  which accepts internal mirrored URLs, and the downloaded files are ADDed to
  the images with a local copy

* previously existing git clone commands have been modified to fetch
  internally mirrored tarballs

Task-number: QTQAINFRA-3343
Change-Id: Ic4640a4f7776e38623edba90f0eba7cb68631223
Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2020-01-13 19:44:45 +01:00
Dimitrios Apostolou
302b228c7a Do not try to double-install docker-ce-cli
That happened because docker-ce* was installing both docker-ce and
docker-ce-cli, so apt was printing a warning.

Change-Id: I0cad82243c8c3d5c0b9f26fc7b24673268259aa4
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2020-01-13 19:44:45 +01:00
Dimitrios Apostolou
4d7f6c711c Remove unused script
Change-Id: Ic3c57966c78fd8158a2467956fd31eaa4374412d
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2020-01-10 16:06:07 +02:00
Simon Hausmann
68c8693e5b Merge remote-tracking branch 'origin/wip/cmake' into dev
This merges merely the provisioning changes needed to perform cmake
builds in the CI. The platform configuration changes will be applied
incremental as we merge support in the individual modules.

 Conflicts:
	coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/02-apt.sh

Added ninja to
coin/provisioning/qtci-linux-SLES-15-x86_64/02-zypperpackages.sh
just to force re-provisioning.

Removed module_config.yaml because that breaks license check in
qmake builds.

Change-Id: Ic074c0c881404f4361e61f66130c0cb07f5e8b84
2019-12-13 14:58:08 +01:00
Alexandru Croitor
3aef268464 Update vcpkg snapshot
The snapshot uses the previous snapshot as a based. It was rebased
on latest master as of 2019-12-05, and also contains cherry-picked
patches to target iOS.

Change-Id: I9fc0c39856fdb255533f6c71d27f5749894b6bea
Reviewed-by: Qt CMake Build Bot
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2019-12-11 20:58:03 +00:00
Dimitrios Apostolou
e4f9ac5607 Tag the docker images as "latest"
We will use this tag in qtbase to refer to the image to run, because
with the current sha1tree() tag, every minor change in the docker images
requires synchronized changes between repositories.

Task-number: QTBUG-79867
Change-Id: If94eb6dd8b97526b589e58064837bc6554fed79c
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2019-12-05 09:13:39 +01:00
Liang Qi
95c7b90309 Update CMake to version 3.16.0-rc4
Change-Id: I4fc1f412888e1915ae2110320c18fb39a9600b94
Reviewed-by: Qt CMake Build Bot
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-11-29 10:00:50 +00: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
Simo Fält
9cf8af5248 Provisioning: Remove sudo when installing pip packages for Qt user
There is no need to install as sudo for qt user. Using sudo will
change the cache dir's permissions preventing us from
installing anything with pip as normal user.

Change-Id: Id45bf3805ce4d772a6c82e429d4e1948289f076e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2019-11-25 13:15:51 +00:00
Johanna Äijälä
08ded9e2f8 Provisioning: update Squish
Update with custom build of Squish to be able to launch Qt5.14
applications in RTA tests.

Change-Id: Ic420656852ae885b057de937baabf01135526764
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2019-11-21 11:26:11 +03:00
Heikki Halmet
dcfef7226f Provisioning: Change JDK script to use 'Remove' function from helpers
Task-number: QTQAINFRA-3369
Change-Id: I2e873eb50d9129c48d92370af80fe121039d172e
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-11-20 08:08:10 +02:00
Heikki Halmet
0335e9c4e5 Provisioning: Remove shell scripts under windows
Change-Id: I3d7a949e95bab39adc349c25d267b7fc28e676cf
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-11-20 09:08:04 +03: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
Liang Qi
6d7ae7ebe1 Merge remote-tracking branch 'origin/5.13' into 5.14
Conflicts:
	coin/provisioning/common/linux/docker.sh

Change-Id: Ic5c3fcaa856137de46c6f3830ca75cedb084927d
2019-11-18 19:21:53 +01: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
Simon Hausmann
1aa25c1084 Bump vcpkg to a new snapshot
Some patches were upstreamed and this beings the version in line with
what we need for Android. This patch also centralizes the version into a
shared file, for future use.

Change-Id: I90973f9bfcbc1bfeb2d11e2ee7a7fa4e4f6a58a2
Reviewed-by: Qt CMake Build Bot
Reviewed-by: Liang Qi <liang.qi@qt.io>
2019-11-13 09:57:53 +00:00
Leander Beernaert
8eab11f696 Update CMake to version 3.15.5
Update required as there's a bug with setting the CXX_STANDARD on
android. Updating to this version fixes the issue.

Change-Id: I50b0bc2941e0919232b46bbf5b28133149878649
Reviewed-by: Liang Qi <liang.qi@qt.io>
2019-11-12 13:27:23 +00: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
Heikki Halmet
f1276acf5c Provisioning: Add MSVC 2019 and upgrade MSVC 2017 to the latest version
Under coin/pre-provisioning can be found information what have been
provisioned to tier1 image

Visual studios are updated to versions:

MSVC 2019: version 16.3.1
MSVC 2017: version 15.9.16

Task-number: QTQAINFRA-2875
Change-Id: I3a9748296dcf088bb312dec8f78bdc59dfb281d1
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2019-11-07 21:59:25 +02: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
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
Liang Qi
0c687679c7 platform_configs: add Android arm64 build on RHEL 7.6 host
* install vcpkg and for android
* a remaining issue in vcpkg: https://github.com/microsoft/vcpkg/issues/8506

Task-number: QTBUG-78945
Change-Id: I484612e2157bf1c1142934cc4f27729e8be37b89
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Qt CMake Build Bot
2019-10-11 18:56:33 +00:00
Liang Qi
ecf2f4f38c provisioning: update python to 3.7 on macos
Task-number: QTQAINFRA-3271
Change-Id: Ic1645a8b5bc94b0ce6ff58352891af0beabd7649
Reviewed-by: Qt CMake Build Bot
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2019-10-11 07:23:46 +00:00
Liang Qi
9e3b3c838c platform_configs: add a RHEL 7.6 build
A preparing for having android build later.

* install gcc 7.x
* install git 2.x
* install a few other dependencies

Change-Id: I18f05bdfb78c92b7f05f67609613b5271b400f91
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Qt CMake Build Bot
2019-10-10 05:34:27 +00: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