Commit Graph

62 Commits

Author SHA1 Message Date
Lucie Gérard
ae21de72f3 Add license header to provisioning scripts missing one
Task-number: QTBUG-108364
Pick-to: 6.5 6.6
Change-Id: I5b1d53aad917ed38f9e26e1fcc1b97b921c0603a
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2023-08-31 16:25:43 +02:00
Casimir Saastamoinen
a4628e939b Change git_lfs install location to versions own repo
Task-number: QTQAINFRA-5573
Change-Id: I481a6d82a6fee2bb849369f98085ccded1ca54a8
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
2023-08-21 12:35:05 +03:00
Artem Dyomin
76f4cebd21 Add libvaapi to the ffmpeg build on Linux x86_64
We need to provide hw acceleration in qtmultimedia linux packages,
vaapi interface is already integrated to the module.

To be described in QtMM documentation.

Pick-to: 6.6 6.5
Change-Id: I60fcc0b43e5800b7dc5621bfb835c72237fd9b02
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
2023-08-12 15:58:25 +00:00
Allan Sandfeld Jensen
d1552c26a8 Add libva-devel and gbm-devel packages for qtwebengine
Will be needed in Qt 6.6 for VA-API

Pick-to: 6.6
Change-Id: I4389ee03eb85a05f9bce37a0eb4629d30e1aefd1
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2023-07-25 14:53:14 +02:00
Dominik Holland
b87b44168c Provisioning: Remove the special wheel cache for python3 packages
It should be replaced with a global pip cache in the long run.
Removing it should make the maintenance of the required packages easier
as it can be done within the modules instead of in the global
provisioing scripts.

Pick-to: 6.6
Change-Id: Ief9832a8a640ce98325cda015d0a9e89d6cb16af
Reviewed-by: Simo Fält <simo.falt@qt.io>
2023-07-25 15:52:51 +03:00
Lucie Gérard
eecfb19548 Use SPDX license identifiers
Replace the current license disclaimer in files by
a SPDX-License-Identifier.
License files are organized under LICENSES directory.

Pick-to: 6.5 6.6
Task-number: QTBUG-67283
Task-number: QTBUG-108364
Change-Id: If26e4d35c780db4a7982bb84872b251dad24716e
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2023-06-12 12:10:41 +00:00
Tony Sarajärvi
58ddf7133c Correct the domain of ci-files01-hki
It's hasn't been .intra.qt.io for quite some time, it
has worked through an alias we have on the DNS server.

Change-Id: I0bc17668dacfea64c276bb553e75e4be16e97659
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
2023-06-12 12:10:26 +00:00
Heikki Halmet
f080b88d85 Remove *yocto_ssh_configurations script
Not needed anymore

Pick-to: 6.4 6.2
Change-Id: I9b813a66593525a2328bed95c128b5979a410fc7
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2023-02-26 14:59:04 +00:00
Fredrik Ålund
cbebb76ee2 CI scripts for Mimer SQL
To be able to build the Mimer SQL Qt Sql plugin the Mimer SQL RDBMS needs
to be installed in the CI environment.

Add CI scripts for Mimer SQL

Task-number: QTBUG-111219
Change-Id: Iff900d49ef5b26d97f4f326b0c0e0bc584c416f9
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2023-02-18 09:44:01 +01:00
Mårten Nordheim
5c6814fb18 Work around glibc bug in our mdns resolution
glibc has a system where, if it fails to perform Happy Eyeballs host
name resolution in parallel, it will do it sequentially.
We triggered this because our docker setup was not responding to
systemd-resolved's AAAA queries over IPv6.
The bug in glibc was then that it would poll for 4999ms after sending
the first of the two queries. __Every time__ we do mdns host lookup.
In tst_QTcpSocket this happens multiple times in ::initTestCase for the
proxy global-datatags. That means we would be stuck polling for
4999ms*5 (number of proxy addresses to look up) before every test-case
that would use proxy (even if the test just does a return in the
proxy-case). Plus another 4999ms for any mdns lookup we would need to
perform during the test.
This led to the test severely slowing down and timing out quite often.

Work around this by doing full mDNS before trying DNS.
This will let us resolve multi-label mDNS addresses.

Pick-to: 6.5
Fixes: QTBUG-107696
Change-Id: I26c6b356b4c9712f4ac6d3613998ee448c0ca504
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
2023-02-15 14:40:57 +00:00
Artem Dyomin
e5cf7b2d58 Fix missing ffmpeg for desktop Linux CI platforms
What's done:
- ffmpeg build added to OpenSuse platforms
- installing of yasm moved to packages install file in
  order to get rid of OS checkings

Pick-to: 6.5
Change-Id: I256f19a03e7f01d27923b083b63d9a6b6a5f29b4
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
2023-01-24 09:22:06 +00:00
Konrad Kujawa
63d72293b7 Add provisioning for gRPC
Add provisioning scripts to install gRPC.
gRPC is requirement to build QtGrpc

Task-number: QTBUG-105492
Change-Id: I1a6d008a1d2c1616000909aacdb721401f706168
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2022-12-07 07:57:21 +01:00
Allan Sandfeld Jensen
bb89b5ca77 Add optional dependencies for QtWebEngine
To better use system libraries and reduce the size of webengine libs

Change-Id: I626327e123ee93bc25f5b40d5adbdffa6dfb772d
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2022-11-24 22:27:26 +01:00
Heikki Halmet
fae885e9c1 Provisioning: Make bootstrap autostart run without terminal
Terminal in UI might cause issues with Autotest
This patch makes bootstrap-agent run in a background shell wrapper.

The wrapper waits 20secs for the VM's network to come up and exits
with an error if it doesn't.
After that it waits for 20secs for the context image to be mounted.
If no context image is mounted after that, it waits for one minute
and makes one mounting attempt, before launching bootstrap-agent with
or without context.

Pick-to: 6.4 6.2
Task-number: COIN-966
Change-Id: I9a3e490325d1fd7c0583b6d5db5eb2023e042571
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2022-11-24 21:18:53 +00:00
Topi Reinio
31c4ad1686 coin: Update provisioned qdoc, qtattributionsscanner binaries
Update qdoc to a version that queries system include paths from the
compiler, avoiding spurious documentation warnings in some environments.

Update qtattributionsscanner to a version that fails the documentation
build on incorrect input, i.e. incorrectly formatted qt_attribution.json
files.

Pick-to: 6.4
Fixes: QTBUG-108353
Change-Id: I3a64f7810cddafcbf9de66bd1d848c18f5677ad0
Reviewed-by: Kai Köhne <kai.koehne@qt.io>
2022-11-17 19:20:31 +00:00
Johanna Äijälä
db68763094 Provisioning: Add Java 11 to Ubuntu20.04
Needed by RTA when compiling Android applications, minimum required
Java is 11.

Pick-to: 6.4
Pick-to: 6.3
Pick-to: 6.2
Change-Id: I9a64e8de322a576d5d94593b5666d72afea8744f
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2022-09-24 11:10:25 +03:00
Liang Qi
7e7c23669c provisioning: fix mdns to support both docker and network tests
Network tests require the system resolver to resolve IP addresses
back to host names, but "mdns4" seems to be unable to do that, and
instead prevents "dns" from doing its job. So we place it after "dns".

Done-with: Dimitrios Apostolou <jimis@qt.io>
Done-with: Thiago Macieira <thiago.macieira@intel.com>
Fixes: QTBUG-106013
Change-Id: If0379cf5f42b41964cf156cdf8691dbcfcc0275b
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
2022-09-23 06:23:55 +00:00
Topi Reinio
505eb9e3a8 coin: Update provisioned qdoc, qtattributionsscanner binaries
Latest qdoc introduced a new command (\modulestatus) as well as other
fixes and improvements.

Pick-to: 6.4
Change-Id: Idcbd96bc1ec17c81d51c2413f6435ee1b7e12946
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2022-09-12 10:14:34 +02:00
Alexey Edelev
134c07923c Rename protobuf provisioning scripts
Use correct protobuf project name for provisioning scripts.
This also should trigger provisioning for all the involved platforms.

Change-Id: I4cfa74c1d41f497db528ee3ae152db1d51de821a
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
2022-09-08 10:27:57 +02:00
Alexey Edelev
ad84c5cb8a Update protobuf provisioning scripts
Enable protobuf provisioning for all linux platforms, since it's
required to build qtbase with protobuf support.

Delete install_protobuff for macos 10.14 since it's not used and
wouldn't build without special casing.

Change-Id: I9c7dea876c45dbcbfc3110b106ae683bbe9179ec
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-09-08 10:27:54 +02:00
Piotr Srebrny
51c663d171 Build static FFmpeg library on macOS
This patch modifies linux/ffmpeg-install.sh to work also for macOS.
The FFmpeg libraries are installed under /usr/local both for Linux
and macOS.

Since macOS x64 does not have the lzma lib for arm64 architecture
installed by default, I disable this libraries for FFmpeg. This
only affects the TIFF image decoder that we do not use.

Added the execute permission to the ubuntu scripts.

Change-Id: Ib8623c6a9bcdd24c89045ede0494839fb9cd2ecc
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-07-28 09:56:16 +02:00
Axel Spoerl
aa9095d4cd Harden cache delete script and extend to all Linux CI platforms
Log script activities and deleted toplevel cache files/directories.
Use sudo to override permissions in cache.
Remove legacy single file based cache if it exists by error.
Create cache directory with appropriate permissions if missing.

Pick-to: 6.4 6.3 6.2 5.15
Change-Id: Id6ad930bf8ba9233eeea8a7602d25c98d0058409
Reviewed-by: Simo Fält <simo.falt@qt.io>
2022-07-20 16:23:58 +00:00
Piotr Srebrny
a273e9f11c Provision FFmpeg library for QtMultimedia plugin
One of the QtMultimedia backends is implemented using FFmpeg.
This provisioning enables building and testing of this backend.

Change-Id: Ia196c2ae4b457aa6b8e3ee8e0f367197aadfe0d9
Reviewed-by: Simo Fält <simo.falt@qt.io>
2022-06-13 09:56:56 +02:00
Toni Saario
a2393b5882 Update git
Older git version does not allow fetching single specific sha1.

Pick-to: 6.2 6.3
Change-Id: Ib795659a597042876a5c7b6fab3875fe1e39873d
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2022-02-22 08:16:45 +02:00
Topi Reinio
69b329a55f coin: Update provisioned qdoc, qtattributionsscanner binaries
Latest qdoc introduced a new command (\qmlvaluetype) used in
qtdeclarative documentation, as well as other fixes and
improvements.

Pick-to: 6.3
Change-Id: I6453468fb36dbe38d62f5eb9de74beffd568673b
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
2022-02-10 23:59:49 +01:00
Kai Köhne
becb423e80 Replace LGPL2.1 only header with LGPL3 one
This is in line with e.g. qtbase. Also remove outdated/unreferenced
license files.

Pick-to: 6.3
Change-Id: I5d3370ab453610f9c8165ff9e57db7ad4a785370
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2021-12-19 19:47:15 +00:00
Samuli Piippo
54c3a77fdf QEMU: update toolchains
Update qemu toolchains to include needed dependencies for QtWebEngine.

Pick-to: 6.2
Change-Id: Ia5cf09b3f94fe75d16304e717a9da04cb120ea79
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2021-11-26 14:21:09 +00:00
Allan Sandfeld Jensen
83b4afd584 Add python3 html5lib
Needed for qtwebengine in 6.3

Change-Id: I6dc941fabe4e28e3dce19db8f7812be034be8586
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2021-11-20 11:13:09 +01:00
Pasi Petäjäjärvi
b580128093 Provisioning: Install NFS support required by QNX QEMU
Task-number: QTBUG-87628
Pick-to: 6.2
Change-Id: I9100dd7eda11a9a6ebf35aa6100c6bf983402b64
Reviewed-by: Marianne Yrjänä <marianne.yrjana@qt.io>
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
2021-10-27 10:12:03 +03:00
Pasi Petäjäjärvi
ffc3ef20a3 CI: Add NFS export
Export work directory via NFS for QNX qemu

Task-number: QTBUG-87628
Pick-to: 6.2
Change-Id: I57a2f612cf268bef4582726c9b0a1b953e74034b
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Reviewed-by: Marianne Yrjänä <marianne.yrjana@qt.io>
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
2021-10-27 07:11:55 +00:00
Topi Reinio
134a8546c6 coin: Update provisioned qdoc, qtattributionsscanner binaries
Latest qdoc has fixes that enables us to enforce zero warnings on
all qtbase modules.

Change-Id: Ie47011fa524fb869fb1e8856fd8c377e14be7e69
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2021-10-22 11:12:29 +02:00
Heikki Halmet
2aa8303236 Provisioning: Add OpenSSL for Android to macOS
Task-number: QTBUG-97243
Pick-to: 6.2
Change-Id: Ibf67b7d713904edb9f8ee83b35eb096e2d3f1eb1
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2021-10-18 14:22:16 +03:00
Heikki Halmet
3b09730b44 Provisioning: Re-install ca-certificates for Ubuntu 20.04
This makes sure that needed ca-certificates are installed during
provisioning

Pick-to: 6.2
Change-Id: I39289f237a54ca0805b1d9116ee899aecf02e72f
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
2021-10-05 11:24:16 +03:00
Topi Reinio
74bc9ea94d coin: Ensure provisioned qdoc has proper permissions
The testing steps are done with the 'qt' user, so modify the ownership
and permissions when extracting the binaries.

Also update the version of the package itself.

Task-number: QTBUG-83851
Change-Id: I6d5318572e34c99637421e527d1e07286e55bfab
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2021-09-27 12:47:20 +00:00
Topi Reinio
f0b4d1c8f5 coin: Update provisioned binaries for qdoc, qtattributionsscanner
Also, change the install directory - attempting to install directly
to Qt's installdir won't work as it gets overwritten by modules'
binary packages.

Task-number: QTBUG-83851
Change-Id: I96cd95f99322d1278d066d22965e54cf3c7701b4
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2021-09-24 10:50:11 +02:00
Samuli Piippo
663ebcb102 Add zstd to Ubuntu 20.04
Needed for bitbake.

Change-Id: Ib7be3a971b970311adca25f46238d3fae838cba9
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2021-09-10 10:57:27 +03:00
Heikki Halmet
8dcbfc526e Set ulimit also for grapchical login
Graphical login requires DefaultLimitNOFILE=4096
to be set in user.conf.

Task-number: COIN-699
Pick-to: 6.2
Change-Id: Ia07e834ebcffa2ed24a7c211255a4c4c5a10ca10
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Toni Saario <toni.saario@qt.io>
2021-08-26 21:17:07 +03:00
Allan Sandfeld Jensen
c4b8c908b6 Update node.js to 12
For Ubuntu it means using an alternative packages, for
openSUSE not using an alternative package.

Pick-to: 6.2
Change-Id: I09085428db083adc1ff1d68f384cd19c83605bfd
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2021-08-18 11:31:42 +02:00
Topi Reinio
e8a86ab6c8 Provision qdoc and qtattributionsscanner
Provision documentation generators for Ubuntu 20.04, and add 'TestDocs'
feature to the configuration already used for generating documentation.

This is to allow building docs during the testing cycle to block
integrations that introduce new documentation warnings, without the
need to add a dependency to qttools.

Pick-to: 6.2
Fixes: QTBUG-83851
Change-Id: I74d7daeb7abb49403e97af41b0521f903607ce55
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2021-08-16 11:21:31 +02:00
Heikki Halmet
8fa865b37b Update Yocto toolchains
Task-number: QTQAINFRA-4459
Change-Id: I0a6144db1ca1ceb35791749bf5b056ced2307ab9
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
(cherry picked from commit 34d0ca0f39)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
2021-07-08 09:01:53 +00:00
Allan Sandfeld Jensen
3f551fedd6 Add qtwebengine dependencies to provisioning
Pick-to: 6.2
Change-Id: If2cc949ce0669281d65995175480ac7cbd9fad74
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
2021-07-06 09:32:23 +02:00
Tony Sarajärvi
e0eb04ecf8 Add execution attribute to provisioning scripts
Change-Id: Ia241a4211d24d2788f0f0ef9af55b23a6b227624
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2021-07-01 15:40:33 +03:00
Dominik Holland
92f423c06d Provisioning: Install libdlt-dev
Fixes: COIN-217
Change-Id: I3ce5da4d6b8e79a766ad90715462a9c8b7c50294
Reviewed-by: Toni Saario <toni.saario@qt.io>
2021-06-08 11:18:57 +02:00
Heikki Halmet
ba869e1975 Add Integrity target for QtBase including provisioning changes
At this point let's add only target for QtBase. Target for
QtDeclarative, QtQuick3d and QtQuickcontrols2 will be
added later when we have all required fixes.

Task-number: QTQAINFRA-3555
Task-number: QTQAINFRA-4285
Change-Id: I59ef76079e98ba428cdb7abcb2560f434c37f517
Reviewed-by: Kimmo Ollila <kimmo.ollila@qt.io>
Reviewed-by: Toni Saario <toni.saario@qt.io>
2021-06-04 11:25:05 +03:00
Heikki Halmet
a4b61379ca Provisioning: Resize ulimit value for open files
Linker for Qt Webengine builds needs to open multiple files.
Without this it will hit the limit

Pick-to: 6.1
Pick-to: 6.1.0
Pick-to: 6.0
Task-number: COIN-699
Change-Id: I53b8c38a4f719714971ca6a4b65349716a873170
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2021-04-19 13:01:22 +03:00
Heikki Halmet
027f8ccb08 Provisioning: Add Vulkan installation for Ubuntu 20.04
Vulkan is needed by examples

Pick-to: 6.1
Pick-to: 6.1.0
Pick-to: 6.0
Task-number: QTBUG-92545
Change-Id: I2f814e452c88c04919b26eb42e90bac18356bbe7
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
2021-04-13 10:02:22 +00:00
Toni Saario
32579bc3c4 Add conan to path
Pick-to: 6.1
Change-Id: I90e028409f606a703fd9b567a221f3f946f11d61
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2021-04-12 06:49:25 +00:00
Samuli Piippo
5fba592288 Remove old QNX provisionings
QNX 6.6 and 7.0 are not needed since they don't support Qt6.

Change-Id: I56d71bbebf421d1a5d952815878217b0bfdc85b2
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2021-04-08 07:18:50 +02:00
Heikki Halmet
b64b4b169e Add Ubuntu 18.04 for Qt6 binary packages
We need to start using Ubuntu 18.04 with Qt6 binary package
targets. Ubuntu 18.04 includes older GLIBC version which
shouldn't cause any problems with linux distributions supported
by Qt6

Tests will be executed with Ubuntu 20.04.

Task-number: QTQAINFRA-4193
Change-Id: Icb189c509351ff080a2c6431299cc0be6ba8adc1
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2021-02-16 08:18:52 +01:00
Marianne Yrjänä
036729ed05 Add QNX7.1 to CI
Task-number: QTQAINFRA-3768
Change-Id: I9c0aa78fad9c6a1263e75b06fa954c335f4b6ec2
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2021-02-08 19:32:25 +02:00