RHEL-9.4 will be run in parallel with RHEL-9.2 with insignificant tests
until RHEL-9.4 is confirmed stable, then it will replace RHEL-9.2.
[CI Platforms]
Pick-to: 6.8
Task-number: QTQAINFRA-6362
Change-Id: I92c10a15346e7bd0c0190a8d6a6513cf6143d2a8
Reviewed-by: Simo Fält <simo.falt@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Take two. The qtbase TestDoc instructions should not be complete.
We only need the documentation-specific instructions to build the docs,
so instruct the test instructions in qtbase to skip the auto test.
This saves time during integration, and also avoids polluting test
results in our Grafana dashboards with test failures in a
"documentation" build.
Change-Id: Ie7114816ca35a578f01deb9946a2a6bb2e577c94
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
Red Hat 8.10 VM template -50 does not have a user set for SSH. This is
fixed in template -51.
Pick-to: 6.8
Change-Id: I602976a0214f6e0f4661e6b876c0710bc3ea9df9
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
The MSVC platform was not there when the rest of the platforms where
adjusted to build examples as standalone. Now that it's here, add it.
This is a pre-requisite for building examples as external projects
with MSVC.
Augments d278e682c6
Pick-to: 6.8
Task-number: QTBUG-90820
Task-number: QTBUG-96232
Change-Id: I4a77d16e0f683f5984beeedb6e6d32707847383b
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
This reverts commit 0cd87bfd32.
The platform is not stable enough, let's remove it first.
Pick-to: 6.8
Change-Id: Ia7a378dc1ad867b085528da02e9d7ed70658c1cd
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Config 'debian-11.6-arm64' to build Debian LoA is not needed anymore as
its purpose is now done by Ubuntu arm64 target which is based on Debian.
Pick-to: 6.8
Task-number: QTQAINFRA-6129
Change-Id: Ife8a61145e200df30a6f78ba7981b4ed8b5fe5c6
Reviewed-by: Liang Qi <liang.qi@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
We had b8521b89dfa36519afe8a7c8f02b982d760fc0f6 which made the target
noop and did not make it to qt5 via submodule update before
333cbd0592 was merged.
This resulted in newer qtbase where noop build was fixed failing to
build with the firebase libs.
Disable Ibase/firebird until correct libs are in place.
Change-Id: Ib8dac29ac74c6619f519702c7542cec8b683283c
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Tests have been monitored and passing now [CI Platforms]
Task-number: QTQAINFRA-6109
Task-number: QTQAINFRA-6110
Task-number: QTQAINFRA-6396
Pick-to: 6.8
Change-Id: I321123e08a4a910a9c7effb5d640773adf8a898c
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
This new tier-1 template has an updated MSVC (1941) and other small
optimizations done to Windows 11:
- .NET runtime optimization service is ran so it wont start
automatically in later VMs.
- Event viewer showed that Windows creates Restore Points during
provisioning so this is now disabled.
- Widgets are now disabled, so they no longer download weather/news
data.
Task-number: QTCREATORBUG-31485
Fixes: QTQAINFRA-6518
Pick-to: 6.8
Change-Id: Ifb60e8a24642e7cff9c8ffef319d6008a6af1fa4
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
This reverts commit 9053e98de8.
Reason for revert: doc instructions were incomplete
Change-Id: I700a7bac4676497ab54dda957143c8d3e08e5083
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Toni Saario <toni.saario@qt.io>
We only need the documentation-specific instructions to build the docs,
so instruct the test instructions in qtbase to skip the auto test.
Change-Id: I6cca16a584aa39fb994b45c0db68309e59bfada1
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
We have two builds we need to cover:
1. Documentation testing, aka 'DocTests' feature
This feature builds docs for every submodule during module
integration, using externally provisioned doc tools.
2. Offline documentation building, aka 'Documentation' feature
This feature builds documentation for use in e.g. Qt Creator
For both these builds we only need a single config to handle them.
The initial configs were based on Ubuntu 22.04, but with the addition
of Ubuntu 24.04, and splitting up X11 and Wayland testing, these configs
multiplied, which is not needed. The inclusion of 'documentation' in
the various test configs was also needlessly confusing when e.g.
looking at test failure results in Grafana.
The previously named 'documentation' configs for Ubuntu have been
renamed to 'developer-build', as this is the significant difference
to the non-developer-build config.
There's still two issues with these configuration:
1. The DocTests configuration also runs the Qt auto tests.
The DoNotRunTests and DisableTests feature flags would
seem to be relevant for skipping the auto-test step in
the coin test instructions, but these are hard coded in
coin to skip the entire test workitem.
2. The offline doc builder builds Qt and tools from scratch
A better approach would be to depend on another build
and just configure and build docs, but doing so requires
more investigation.
Change-Id: I5a041dec697424b85d3b1588cd6e77a80551d2eb
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
qtci-windows-10_22H2-x86_64-51 was copied as -52
In this new tier-1 image, the following services were disabled:
- backgroundDownload.exe (part of MSVC)
- Microsoft Edge update/installer and Onedrive
Also missing certification GlobalSign Root CA - R3 was added.
Pick-to: 6.8 6.7 6.5 6.2
Task-number: QTQAINFRA-6207
Task-number: QTQAINFRA-6490
Task-number: QTQAINFRA-6473
Change-Id: Ifd51d25a6c8d43b008ca65af22ebbd592cf57b85
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Packaging reported issue that python installation
without proxy didn't work - therefore enabling proxy
back was needed but with a fix to handle Py 3.10+ changes
Py 3.10+ pip 24.2 has moved to use system certifications
by default which caused issue when proxy is used
and if host didn't have one specific certification
GlobalSign Root CA - R3 for pypi.org.
Also noticed that sometimes Windows x64 images seemed to
have this missing certification, but after installing it
to Windows ARM (which was clearly missing it) - logs showed
they didn't have it - and direct check to both Win x64
Tier1 images showed that they didn't have that cert.
Not sure what steps in provisioning or proxy usage could have
affected to that, but missing certification is now added directly
to all of these new three Windows Tier 1 images:
- qtci-windows-10_22H2-x86_64-52 (via QTQAINFRA-6207)
- qtci-windows-11_23H2-x86_64-53
- qtci-windows-11_22H2-aarch64-53
Therefore --use-deprecated=legacy-certs flag is not needed
when system has correct certification available as Py 3.10+
has moved to use them by default.
Long-term improvements could still be added in future, in two ways:
1) Internal package cache (QTQAINFRA-6485 QTQAINFRA-5531), or
2) To update system certificates with Py 3.10+
But those will need more time to decide and implement.
Therefore this improved quick fix to get proxy back with Py 3.10+
was needed now and it removes previous quick fix to unset proxy.
Task-number: QTQAINFRA-6490
Task-number: QTQAINFRA-6473
Pick-to: 6.8 6.7 6.5 6.2
Change-Id: I0805a70cf1163012094505162d28640e9ea8e6bb
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
both x64 and arm64.
Don't have enough resource to make sure docker setup works fine
for new platform now.
Task-number: QTBUG-126410
Pick-to: 6.8
Change-Id: I58de4836af9d7589c1a1db5371c410099e671793
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Previously configurations with -make examples in their configure args
were building examples as part of the Qt library build. This has some
downsides:
- we don't build examples as a separate project, thus not ensuring
that we build examples as our users would
- qt cmake deployment api can't be used due to various limitations in
our tooling
Use the new qtbase instructions to instead build examples as a
separate project in a separate build directory, after Qt is built and
installed. This is similar to how we build standalone tests.
The new instructions are activated by the StandaloneExamples features.
It is opt-in as opposed to standalone tests, so we can disable the
feature in case any regressions happen.
Task-number: QTBUG-90820
Task-number: QTBUG-96232
Change-Id: I71b37b91ed09bcc0797841adf0df84cc0b111fd7
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
RHEL-8.8 targets are replaced by RHEL-8.10 targets in platform
configurations. [CI Platforms]
Task-number: QTQAINFRA-6366
Change-Id: I2dcf70b030d72261ec7bd130058a6062644813d6
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
'InsignificantTests' is removed from all RHEL-8.10 targets and
'Packaging' feature is added to packaging RHEL-8.10 targets. [CI
Platforms]
Task-number: QTQAINFRA-6366
Change-Id: I0a83ccf5b75c7f2c7c8de871c267d286cf3a9296
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
We still have one offscreen build(non-dev).
Pick-to: 6.8
Change-Id: Ib0a4314387bc4388e75cb6dc65c220e167980805
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
It's broken in the VMs in our CI.
This follows 94a4f06fb88ec6c7fa5e31dfd28af4e9b3cdbdd8 in qtbase.
Fixes: QTBUG-126250
Task-number: QTBUG-125446
Pick-to: 6.8
Change-Id: Id61f3d51cea33a8648aa99941c0dc77b9da5c498
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
RHEL-8.10 will be run in parallel with RHEL-8.8 in CI as non-blocking
until RHEL-8.10 is confirmed stable, then it will replace RHEL-8.8. [CI Platforms]
Task-number: QTQAINFRA-6366
Change-Id: I4b470754895a72be026e869eb4e4d273eb3801b4
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
The flag was removed from qtgrpc repo and has no effect now. Clean it
up from all platform configs.
Pick-to: 6.8
Change-Id: I59e200c6bcd63e03cc7c7477d502e456af8c9b01
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Packaging targets were accidentally moved to c++20.
Amends bf633f08b7
Amends b4bcf1e6ca
Fixes: QTQAINFRA-6424
Pick-to: 6.8
Change-Id: Iad6f8202329b471733cc1bc8ddf22feb3ffadfb4
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
build on wayland and test offscreen and wayland
Task-number: QTQAINFRA-6112
Task-number: QTQAINFRA-6308
Change-Id: I31a57794d455316fc98f1d84d3d275fa6e934b8e
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
The version variable that is used to define the packages to download was
updated to reflect the new version.
A new case was added for the new "Debian11" on "arm64" package which was
not a provisioned package on older version but is now provided.
As "Debian11" was not currenly loading "libclang.sh", a new script that
performs this process was added to
"coin/provisioning/qtci-linux-Debian-11.6-aarch64".
The newly sourced "libclang.sh" includes
"coin/provisiong/common/unix/common.sourced.sh", which sets up certain
common variables such as the used architecture and the platform id.
When "common.sourced.sh" sets "PROVISION_ARCH", that contains the
current platform architecture, it fails if the platform architecture is
not supported.
For "Debian11" on "arm64", the architecture, as reported by "uname -m"
is "aarch64", which is equivalent to "arm64".
"aarch64" was not handled by the script, so that a platform with that
architecture would result in a fail when sourcing "common.sourced.sh".
To avoid the failure, the case that sets "PROVISIONING_ARCH" to "arm64"
will not trigger when the reported architecture is "aarch64".
The specialized RedHat case was update to work specifically for version
9, to use the new specifically built package for Rhel9.2.
The default case, previously using an "ubuntu20.04" package, was
modified to use a "Rhel8.8" package.
A package for "Ubuntu20.04" is not currently provided anymore as the
platform was removed from CI and the new "22.04" package is not
compatible with all the platforms that would use it.
In particular, the new packages are built on a too new glibc, which will
then fail to link, due to undefined symbols in the produced Clang
libraries, when used on older-glibc platforms such as "OpenSuse15" and
"Rhel8.8".
The "Rhel8.8" package was specifically used as the platform for the
default package as it ships the older glibc, "2.28", of the supported
platforms, which should ensure that it works on the older-version platforms.
The "sha1" variables for cached downloads was updated to reflect the new
packages.
For provisioning on windows, the version variable and the sha1 variables
were updated to reflect the new version and the new packages, respectively.
Pick-to: 6.8 6.7
Task-number: QTBUG-111580
Task-number: QTBUG-121548
Change-Id: Ie7c1a8d8fe9114912d53a87f70ebfa00341a9d8a
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Previously, iOS (where we mostly using static linking) was also using
FFmpeg built as static libs, now switch to dynamic libraries, as
it was already done for macOS. Requires changes in cmake file in
qtmultimedia in order to configure with -DQT_DEPLOY_FFMPEG=TRUE.
Pick-to: 6.8
Fixes: QTBUG-120991
Change-Id: I0b014f24db3127697b76c6d1774437faae64a7c8
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Patchelf is needed for fixing FFmpeg dependencies,
the previous CR reveals details.
Patchelf is not available in the standard package manager on RHEL,
let's install it from sources.
Pick-to: 6.8
Change-Id: I724ffed9c48b9811e10de89519d8271e2f82260d
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>