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>
Install Chrome and chromedriver from our cache with
specific version for better CI stability.
Fixes: QTQAINFRA-6465
Change-Id: I34f84563c6eb5feea4f112adbd20136974b211c8
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
The Mimer SQL macOS binaries had a problem fixed in version
11.0.8E. Update provisioning script with new version. Since Mimer SQL
on macOS is now universal binary only, remove the arm64 and x86_64
versions.
Fixes: QTQAINFRA-6559
Pick-to: 6.8
Change-Id: I7e202ffc945167db79430846571cd7e1bb5158f6
Reviewed-by: Elias Toivola <elias.toivola@qt.io>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
We have u2404 arm64 offscreen tested in qt5 since
420b779335.
Pick-to: 6.8
Change-Id: Ibbb7d275d4abe4fc73646747939b2361c5317b26
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Add a github action to build a static release build of qmlls.
There should be nightly releases that are build at night on monday,
wednesday and friday (frequency to be adjusted in the future), and
"real" releases that are built when a tag is pushed.
There is also the option to trigger the workflow "by hand" to get
nightly builds.
Nightly qmlls is versioned via qtdeclarative's short SHA,
qmlls-nightly-<short sha>, and "real releases" just follow the tag name
(as long as they have 'qmlls' and not 'nightly' in their tag name).
Add some workaround for the file stripping to have debug information in
a file separate to the qmlls binary.
You can see the github action in action at
https://github.com/samishalayel/qt5/actions/workflows/build_qmlls.yaml
Task-number: QTBUG-126405
Change-Id: I5379215062d7424544663c1519c4e296baf11fba
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Since Dec. 2022, qtwayland.yaml was included in qt5 integration,
which has too many InsignificantTests configs, let's remove some.
Pick-to: 6.8
Change-Id: I7893578797895704bbb8d3ad05070816e30f4678
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@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>
So it can be included both from qt5.yaml and Boot2Qt's doc.yaml
Amends 434e4a224a
Change-Id: I89d9a5d8d36096358d8cba7afb21b32f6074e200
Reviewed-by: Toni Saario <toni.saario@qt.io>
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
It was previously missed, and thus qdoc wasn't built for the
windows-11_23H2-llvm Packaging configuration.
Amends 9975595a5e
Pick-to: 6.7 6.8
Fixes: QTBUG-121548
Task-number: QTBUG-111580
Change-Id: I1142b593f36c8366ceaeac91eba81e16f1a2557d
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
The screen capture permission might be useful for Qt Multimedia, and
also allows us to do screen capturing of the state of the VM in case
of test failures.
For macOS 15 we need to work around the monthly nagging that an
app has permission to capture the screen, otherwise this popup
may interfere with test runs.
Pick-to: 6.8
Change-Id: I0398488c78b19a85ba527b780b264e0b915b6024
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
We are experimenting with various ways of running and packaging the
bootstrap agent. To support this, let's add the required permissions
to both a standalone bootstrap-agent executable, as well as an app
bundled version of it, if found.
In addition, add the permissions to sshd-keygen-wrapper, which is
the responsible process for the SSH server, and any ssh login
sessions spawned by that. This serves two purposes. Firstly, this
matches the permissions between a coin run (by the bootstrap agent)
and what a developer will see when SSH'ing into the CI machine to
debug an issue. Secondly, we might use ssh as an entrypoint to
run the bootstrap-agent, in which case we need the permissions
on sshd-keygen-wrapper anyways, so that they are inherited by
the bootstrap-agent.
Pick-to: 6.8
Change-Id: I576349e93ca19d98384490c99102966e8ffe2833
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
Add Squish provisioning to linux on arm and windows on arm machines
also.
Pick-to: 6.8 6.7
Change-Id: I52f0e8fc4931efd7c7fcf36c555cbae76e2f347b
Reviewed-by: Simo Fält <simo.falt@qt.io>
Set test running to happen on non-developer static target
for modules upstream of QtDeclarative. Qtdeclarative tests
do not build with static flag, due to this only up to this.
Update VSB and VIP.
Change-Id: If7e016f11b5d3908dff584fc05bcc8985d471a94
Reviewed-by: Simo Fält <simo.falt@qt.io>
Currently any configuration tagged with the 'LicenseCheck' feature
uses the qtqa/master tst_licenses.pl script for license checking. The
exact instructions that are run are hard-coded in the Coin repository.
This is inflexible, and also confusing because qtqa has a dev and a
master branch, and people forget to cherry-pick changes to the master
branch.
Furthermore always using the qtqa/master branch for all qt5.git
branches is limiting, because no instruction changes can be made to
a specific qt5.git branch.
Using the new instructions added in qtbase commit
2a0e89981a52633c497f62bad0c7d26c466493cb
we can now tag configurations with the 'LicenseCheckV2' feature.
Integrations will then use the instructions from the active qtbase
SHA1 to run the license check.
Currently the qtbase instructions will always use the qtqa/dev branch
for the license check, for both the dev and 6.8 branches, but in the
near future we will likely want to create versioned branches for
the qtqa repo, just like the rest of our repositories, so that we
can have specific license check instructions for specific branches.
Pick-to: 6.8
Task-number: QTBUG-124453
Task-number: QTBUG-125211
Task-number: QTBUG-125569
Task-number: QTQAINFRA-3935
Change-Id: Ica024dec44a9581c49cdfb555ba93667f7b34780
Reviewed-by: Toni Saario <toni.saario@qt.io>
Reviewed-by: Lucie Gerard <lucie.gerard@qt.io>
Allows to join the resulting list using ',' or something more exotic
like ' -skip'.
Change-Id: Iafffe3eaa8c14cde81c0ce05c584b43144011a3a
Reviewed-by: Alexandru Croitor <alexandru.croitor@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>
Qt Graphs will be officially supported from Qt 6.8.0 ->
Task-number: QTBUG-125143
Pick-to: 6.8
Change-Id: I3dd57696188ef03b1ea67d15fce407fc48d333ec
Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
Qt HTTP Server will be officially supported from Qt 6.8.0 ->
Task-number: QTBUG-125155
Pick-to: 6.8
Change-Id: I3286b2b0bdfcb675774d67909d485e88d100c09d
Reviewed-by: Antti Kokko <antti.kokko@qt.io>
It will be officially supported from Qt 6.8.0 ->
Task-number: QTBUG-125156
Pick-to: 6.8
Change-Id: Idd5d2851dfa9d4c04643b3385ee8b4da86226772
Reviewed-by: Antti Kokko <antti.kokko@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>
Those will be provided by Coin.
Follow-up to 4e09a6db79 for macOS ARM.
Pick-to: 6.8 6.5 6.2
Change-Id: Iffe433b606e6fb28580b8d2a265ee82f4bda7eb8
Reviewed-by: Toni Saario <toni.saario@qt.io>