Commit Graph

3572 Commits

Author SHA1 Message Date
Daniel Stone
3609dbc061 ci: Add ci-kdl to test-base container
It's useful to monitor things on your devices.

Signed-off-by: Daniel Stone <daniels@collabora.com>
Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451>
2025-04-28 20:08:32 +00:00
Daniel Stone
a5159ff108 ci: Add packages for hardware CI testing
We need these things in our rootfs.

Signed-off-by: Daniel Stone <daniels@collabora.com>
Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com>
Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451>
2025-04-28 20:08:32 +00:00
Daniel Stone
73993c2e74 ci: Add firmware to test-base container
We need firmware to run stuff.

Signed-off-by: Daniel Stone <daniels@collabora.com>
Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com>
Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451>
2025-04-28 20:08:32 +00:00
Eric Engestrom
580a151642 ci: use https:// to install ci-fairy
There's no reason to try to use http://, not that it would work as it's
301-redirected to https:// anyway.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451>
2025-04-28 20:08:32 +00:00
Valentine Burley
118a4c5872 ci/android: Remove redundant android-tools folder
Since we no longer download the Android build or platform tools,
there's no need for a separate android-tools subfolder. The CTS
archive is now extracted directly to /android-cts.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451>
2025-04-28 20:08:32 +00:00
Valentine Burley
3eb61729e3 ci/deqp-runner: Collapse build section
Make the container build more readable and easier to follow in CI logs.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451>
2025-04-28 20:08:32 +00:00
Valentine Burley
c1242c15af ci/rust: Collapse build section
Make the container build more readable and easier to follow in CI logs.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451>
2025-04-28 20:08:32 +00:00
Valentine Burley
bfe6f50ab4 ci/deqp: Collapse build section
Make the container build more readable and easier to follow in CI logs.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451>
2025-04-28 20:08:32 +00:00
Valentine Burley
7686edcb73 ci/angle: Collapse build section
Make the container build more readable and easier to follow in CI logs.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451>
2025-04-28 20:08:32 +00:00
Valentine Burley
7d1e34204f ci/android: Collapse more build sections
Add two new build sections, and collapse the existing ones to make the
container build more readable and easier to follow in CI logs.

Also quieten unzipping the Android CTS and NDK, which print thousands of
lines and overflow the logs.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451>
2025-04-28 20:08:32 +00:00
Valentine Burley
b3c07fe722 ci/android: Use aapt from Debian packages
Switch to using the aapt Debian package, which includes up-to-date
versions of both aapt and aapt2. This removes the need to manually
download and install the Android build-tools, eliminating one of the
blockers for a hypothetical arm64 test-android container.

Verified versions:
aapt: Android Asset Packaging Tool, v0.2-debian
aapt2: Android Asset Packaging Tool (aapt) 2.19-debian

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451>
2025-04-28 20:08:32 +00:00
Guilherme Gallo
3493500abb ci: Update build-apitrace.sh header with the right tag
The build-apitrace.sh moved from test-gl/vk to test-base script at
175b6d02.

Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34713>
2025-04-26 14:27:54 +00:00
Guilherme Gallo
b92dd9c573 ci: bump apitrace version
apitrace at commit b6102d10 has a bugfix regarding a recent regression
in GPU frame time calculation that made we miss weeks of performance
data.

Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34713>
2025-04-26 14:27:54 +00:00
Eric Engestrom
9d0cd43a68 ci/build: drop install.tar from gitlab artifacts
Now that everyone uses the S3 url, let's avoid unnecessary uploads of
several GB per pipeline.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34710>
2025-04-25 12:16:28 +00:00
Eric Engestrom
630aef6653 ci/test: make generic fdo runner test jobs use the S3 artifacts too
These were the last users of the gitlab artifacts.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34710>
2025-04-25 12:16:28 +00:00
Eric Engestrom
1d7cce2700 ci/ci-tron: default HWCI_TEST_SCRIPT to deqp-runner, as it's almost always what's run
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34710>
2025-04-25 12:16:28 +00:00
Eric Engestrom
20631a07ca ci/test: rename .b2c-vkd3d-proton-test to .test-vkd3d-proton
It has nothing to do with ci-tron, it just happens that the first vkd3d
job was running on ci-tron.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34710>
2025-04-25 12:16:28 +00:00
Eric Engestrom
35816d6422 ci/test: fix annoying yamllint warning about 2 spaces before comments
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34710>
2025-04-25 12:16:27 +00:00
Eric Engestrom
aca1a332c2 ci/build: drop unnecessary shellcheck disables
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34710>
2025-04-25 12:16:27 +00:00
Eric Engestrom
ab0e505d7f ci/build: rename variable to avoid changing the meaning of existing variable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34710>
2025-04-25 12:16:27 +00:00
Eric Engestrom
8c28f77bd1 ci/build: split git commit sha command out of echo
This prevents errors from being masked, eg. when `git` is not installed.

While at it, use `--short=10` instead of piping through `cut`.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34710>
2025-04-25 12:16:27 +00:00
Eric Engestrom
621aebe046 ci/build: drop unused VERSION from python-artifacts
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34710>
2025-04-25 12:16:27 +00:00
Eric Engestrom
5be4799734 ci/build: drop lava scripts from builds artifacts
The ones used come from the "python-artifacts" job.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34710>
2025-04-25 12:16:27 +00:00
Eric Engestrom
1f08d75272 ci/build: drop expectation files from python-artifacts
The ones used come from the mesa build artifacts.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34710>
2025-04-25 12:16:27 +00:00
Eric Engestrom
d35c630483 ci/build: drop b2c files from the builds artifacts
They haven't been used in a long time.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34710>
2025-04-25 12:16:27 +00:00
Valentine Burley
cd8d8ca795 ci: Update kernel to fix GPU recovery issues on sm8350
This new revision contains one new commit, fixing GPU recovery failures
on sm8350.

dea4d930f2

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34694>
2025-04-25 11:04:16 +00:00
Eric Engestrom
bf4fa82af9 ci: use curl instead of wget in download-git-cache.sh
Note that this code is executed on the generic FDo gitlab runners, not
in our docker images. This change is merely to avoid the confusion that
lead to the code in the previous commit.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34684>
2025-04-24 10:36:00 +00:00
Eric Engestrom
74809ce0e3 ci: drop dead wgetrc as there are no uses of wget in our CI images
Note that if you grep, you'll find two instances of `wget`, but those are not
executed in our docker images, but on the generic FDo gitlab runners, so the
/etc/wgetrc file in our docker images cannot affect them.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34684>
2025-04-24 10:36:00 +00:00
Eric Engestrom
a0407a6ecf ci/vkd3d: fail shell pipeline when part of it fails
We use pipes in several places and don't want to ignore their failures.

A couple of exceptions are allowed with explicit `|| true`.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34639>
2025-04-24 09:00:37 +00:00
Eric Engestrom
104f21c27b ci/vkd3d: treat reading undefined variables as an error
This would've prevented the bug in the previous commit.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34639>
2025-04-24 09:00:37 +00:00
Eric Engestrom
89d4ddce0e ci/vkd3d: fix RESULTS_DIR variable name
The bug in the previous commit was hiding this bug...

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34639>
2025-04-24 09:00:37 +00:00
Eric Engestrom
3c0d414cbf ci/vkd3d: only keep logs of failed tests
This is what I meant to do from the start but messed up.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34639>
2025-04-24 09:00:36 +00:00
Eric Engestrom
7f0fe34758 ci/vkd3d: quieten the mesa version check
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34639>
2025-04-24 09:00:36 +00:00
Eric Engestrom
0f8fd5da7a ci/vkd3d: fix test failure list when no test failed
This becomes important once the bugfix in the next commit is applied.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34639>
2025-04-24 09:00:36 +00:00
Eric Engestrom
d21e300f33 ci/vkd3d: drop misguided "something failed" error message
Luckily the check was broken, but let's not fix it because this would
cause any failure to fail the job, regardless of expectations.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34639>
2025-04-24 09:00:36 +00:00
Collabora's Gfx CI Team
8514452cf7 Uprev Piglit to c50d9aa54f85e0af9d72fab86c73f89356d96399
0ecdebb0f5...c50d9aa54f

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34650>
2025-04-22 21:52:29 +00:00
Collabora's Gfx CI Team
3f49272944 Uprev ANGLE to f355e2b37ed43939e2753fc7dacccf75abb4c1a3
a3f2545f6b...f355e2b37e

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34650>
2025-04-22 21:52:29 +00:00
Vignesh Raman
6c33b1e8c1 ci: replace s3_upload wrapper with ci-fairy s3cp
Now that ci-fairy s3cp works, replace the s3_upload curl wrapper with
ci-fairy s3cp command.

Signed-off-by: Vignesh Raman <vignesh.raman@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34550>
2025-04-22 11:17:16 +00:00
Vignesh Raman
4b3b3d4c70 ci: use MESA_TEMPLATES_COMMIT for ci-fairy install
Use MESA_TEMPLATES_COMMIT instead of hard-coding the commit hash in
pip install ci-fairy.

Signed-off-by: Vignesh Raman <vignesh.raman@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34550>
2025-04-22 11:17:16 +00:00
Eric Engestrom
c643f62633 ci: bump to fedora 42
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34626>
2025-04-21 16:05:11 +00:00
Eric Engestrom
b59b53e824 ci: uprev vkd3d-proton
078f07f588...7eef0a64e3

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34356>
2025-04-21 11:50:57 +00:00
Eric Engestrom
fec01a11d4 ci/vkd3d: drop unused 32-bit build
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34356>
2025-04-21 11:50:57 +00:00
Valentine Burley
6b1f30f359 ci: Fix Android container structured tagging checks
Structured tagging is used to verify the checksum of the component we're
building. In Android's case, this is currently only used for ANGLE.

Move the build-time check to the debian/x86_64_test-android container,
where ANGLE is built.

Previously, having this definition in .android-variables meant that every
Android test job inherited the ANGLE_TAG variable, making it impossible to
use Mesa as the GLES driver in CI.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34572>
2025-04-18 06:13:13 +00:00
Valentine Burley
b2490e5816 ci: Uncollapse yaml-toml-shell-py-test log sections
This job checks for errors in various scripts and files, so show its
output in the logs for easier debugging.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34572>
2025-04-18 06:13:11 +00:00
Eric Engestrom
519e329cd6 ci: bump apitrace
More dlopen fixes for !30417.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34599>
2025-04-18 05:24:38 +00:00
Antonio Ospite
4dabc7776f ci/android: show how to add more Android CTS test cases
Show how to add more Android CTS tests cases, using --include-filters

Only CtsNativeHardwareTestCases and CtsSkQPTestCases are actually
enabled for now, because the android-angle-lavapipe-cts job is part of
the pre-merge pipeline and these modules would not be too expensive to
run.

The container size increases by about 60Mb and the test time from 4m to
7 min on a local system, so it's an acceptable compromise to show how
multiple modules can be tested.

A similar mechanism will be used to add CtsDeqpTestCases tests in the
future, probably in nightly or weekly jobs, because that would require
more space in the containers and a lot more time to run the tests.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34479>
2025-04-17 11:50:07 +00:00
Antonio Ospite
fbc715200e ci/android: strip tailing spaces in Android CTS expectation files
Trailing spaces in include and exclude filters can confuse cts-tradefed,
so make sure to strip those from the lines in Android CTS expectation
files, since those are used to build the filter arguments.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34479>
2025-04-17 11:50:07 +00:00
Antonio Ospite
8f41667b37 ci/android: specify EXCLUDE_FILTERS after INCLUDE_FILTERS when launching Android CTS
Specify EXCLUDE_FILTERS after INCLUDE_FILTERS when launching Android
CTS, to make it clearer that exclude filters take the precedence on
include filters.

This change is not strictly necessary, according to the documentation
exclude filters take the precedence anyway, see
https://source.android.com/docs/core/tests/tradefed/testing/through-suite/option-passing#pass_filters_to_the_suite

So this change is added only to document the behavior rather then to
control it.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34479>
2025-04-17 11:50:07 +00:00
Antonio Ospite
af96ed09f0 ci/deqp: force overwriting exiting files when compressing with zstd
This does not change the behavior in CI runs where the files are always
created from scratch, but it helps on local invocations when running the
command multiple times on the same rootfs.

It prevents build-deqp.sh to stop at the command line prompt for
questions like:

-----------------------------------------------------------------------
zstd: mustpass/egl-main.txt.zst already exists; overwrite (y/n) ? y
zstd: mustpass/gles2-khr-main.txt.zst already exists; overwrite (y/n) ? y      =>  5%
zstd: mustpass/gles2-main.txt.zst already exists; overwrite (y/n) ? y          =>  6%
-----------------------------------------------------------------------
...

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34468>
2025-04-17 11:07:17 +00:00
Antonio Ospite
3e2f43bb13 ci/android: only use custom kernel for venus GPU_MODEs
The venus GPU_MODEs require some patches to the Android 14 kernel to
work, so custom built bzImage and initramfs.img need to be passed to
launch_cvd.

However specifying a custom kernel triggers some image repacking which
is quite expensive in terms of I/O; so, since the custom kernel is only
needed for the venus GPU_MODEs, avoid specifying it for the other modes
to speed up launching cuttlefish in those cases.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34468>
2025-04-17 11:07:17 +00:00