Daniel Stone
95799845f2
ci: Update kernel for Panthor scheduling fixes
...
These should make G610 properly stable now.
Signed-off-by: Daniel Stone <daniels@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33431 >
2025-03-11 12:59:17 +00:00
Collabora's Gfx CI Team
94d2cc2531
Uprev Piglit to 708a9e365b18fdd881af989f75e1a6c1409cae8c
...
04d901e49d...708a9e365b
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33831 >
2025-03-10 11:47:52 +00:00
Guilherme Gallo
8fcc52b8d7
ci/lava: Don't print empty lines when changing sections
...
Make `print_log` section-aware to stop printing newlines whenever a
section changes.
This also caught a bug: the `handle_exception` was sending an exception
type to the `print_log`, now it is fixed.
Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33906 >
2025-03-10 05:44:25 +00:00
Guilherme Gallo
422e65557d
ci/lava: Tweak timeouts
...
LAVA actions follow a hierarchical structure, where most subactions have
their timeouts overridden if the parent action supports a retry
mechanism, such as the `depthcharge-retry` action.
The timeout is calculated as: [1]
```
parent action timeout / failure_retry value
```
To adjust a subaction's timeout, we need to modify the nearest parent
action.
[1]
https://gitlab.collabora.com/lava/lava/-/blob/collabora/production/lava_dispatcher/action.py#L149
Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33906 >
2025-03-10 05:44:25 +00:00
Guilherme Gallo
a33c0e1867
ci/lava: Split boot action into deploy and boot
...
The boot action was wrapping the deploy action, which could cause
timeout misalignment. For example, the boot `GitlabSection` timeout was
shorter than the deploy timeout in LAVA, leading to cases where LAVA
jobs were canceled during their own retry mechanism.
By splitting these actions, we can align the timeouts properly,
preventing interference and unnecessary job cancellations.
Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33906 >
2025-03-10 05:44:25 +00:00
Guilherme Gallo
d85af615f9
ci/lava: Remove depthcharge-start timeout
...
It has no effect, as it is overridden by depthcharge-retry timeout /
failure_retry.
Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33906 >
2025-03-10 05:44:25 +00:00
Leonard Göhrs
240585cc6d
etnaviv/ci: add pengutronix LAVA lab with one i.MX8MP device
...
The device is a MBa8MPxL[1]. Once we have verified that the infrastructure
is set up correctly and is operating reliably more devices can be added.
[1]: https://www.tq-group.com/de/produkte/tq-embedded/arm-architektur/mba8mpxl/
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com >
Reviewed-by: Valentine Burley <valentine.burley@collabora.com >
Signed-off-by: Leonard Göhrs <l.goehrs@pengutronix.de >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33759 >
2025-03-08 10:18:11 +00:00
Guilherme Gallo
47659ddf70
ci: Simplify LAVA farm detection
...
Refactor the LAVA farm detection to use a simpler environment
variable-based approach:
- Remove the complex regex-based farm detection
- Replace LavaFarm enum with a simple string-based farm identification
- Update related tests and job definition logic
- Remove hypothesis testing dependency
Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33888 >
2025-03-08 02:45:02 +00:00
Samuel Pitoiset
54242f8f04
ci/b2c: fix passing B2C_* variables
...
Broken search&replace regex.
This fixes GPU hang detection on RADV/CI.
Fixes: bad0197300 ("ci/b2c: pass through all the B2C_* variable without renaming them")
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33924 >
2025-03-06 22:09:49 +00:00
Marek Olšák
e5c76088e9
meson: never use static glapi because shared glapi is also static and better
...
Shared glapi is already statically linked with libmesa (src/mesa),
and some parts are statically linked with loaders.
Static glapi will be removed after this is merged.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33794 >
2025-03-06 17:13:22 +00:00
Samuel Pitoiset
279511bea0
ci: update VKCTS main to ba86fb95004331f2cf571dd9adefe2458290ee11
...
RADV is the only driver using VKCTS main.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33707 >
2025-03-05 22:03:33 +00:00
Corentin Noël
45e771f4fb
ci: Update CrosVM and Virglrenderer
...
Update to their latest version on time
Signed-off-by: Corentin Noël <corentin.noel@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33796 >
2025-03-05 10:16:49 +00:00
Guilherme Gallo
fbc55afbdf
ci/lava: Properly detect VMWARE farm
...
This will make the job definition default to the UART format for vmware
jobs, as only Collabora's farm relies on the SSH job definition due to
the unreliable Chromebook UART in LAVA.
Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33874 >
2025-03-04 16:46:17 +00:00
Guilherme Gallo
1dbebd2619
ci/lava: Add U-Boot action timeout for rockchip DUTs
...
Add a specific timeout for the U-Boot action in LAVA job definitions for
rockchip devices. This ensures sufficient time for U-Boot to download
the kernel and set up early network, preventing potential job failures
due to timeout constraints.
This behavior started to happen since LAVA 2025.02 version.
Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33839 >
2025-03-04 01:17:50 +00:00
Guilherme Gallo
2b9e3e2fff
ci/lava: xtrace the lava_job_submitter call
...
To make easier to debug issues and run locally.
Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33839 >
2025-03-04 01:17:50 +00:00
Guilherme Gallo
1169f704d3
ci/lava: Propagate errors in SSH tests
...
The `lava_ssh_test_case` wrapper was missing the `set -e` shell option,
which made LAVA system interpret the job was succeeding, because the
`container` namespace was exiting normally, even though the `dut`
namespace was failing.
Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33839 >
2025-03-04 01:17:50 +00:00
Guilherme Gallo
02a86b3284
ci/lava: Drop the repeating quotes on lava-test-case
...
LAVA was recently patched [1] with a fix on how parameters are parsed in
`lava-test-case`, so we don't need to repeat quotes to send the
arguments properly to it.
[1] 18c9cf7976
Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33839 >
2025-03-04 01:17:50 +00:00
Marek Olšák
027ccd963b
Remove osmesa
...
It's redundant with EGL surfaceless and it doesn't have much use.
It's also available from the amber branch, so distros should get it from
there if they want to continue packaging it.
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33836 >
2025-03-04 00:40:39 +00:00
Eric Engestrom
cf7fa16f8c
ci/b2c: use more readable "long" argument names
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33825 >
2025-03-01 22:50:51 +00:00
Eric Engestrom
a3ad54adf0
ci/b2c: set the registry proxy from the job
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33825 >
2025-03-01 22:50:51 +00:00
Eric Engestrom
314e023960
ci/b2c: pass through all the CI_* variables as well
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33825 >
2025-03-01 22:50:51 +00:00
Eric Engestrom
bad0197300
ci/b2c: pass through all the B2C_* variable without renaming them
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33825 >
2025-03-01 22:50:51 +00:00
Eric Engestrom
d41d2874ef
ci/b2c: rename IMAGE_UNDER_TEST to B2C_IMAGE_UNDER_TEST
...
Makes things mildly clearer, but more importantly gets rid of the
last variable used that doesn't start with `B2C_*` or `CI_*`.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33825 >
2025-03-01 22:50:51 +00:00
Eric Engestrom
6394cdde6c
ci/b2c: split B2C_JOB_VOLUME_EXCLUSIONS in the jinja template
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33825 >
2025-03-01 22:50:51 +00:00
Eric Engestrom
215dac82c3
ci/b2c: set default value for B2C_KERNEL_CMDLINE_EXTRAS in the job
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33825 >
2025-03-01 22:50:51 +00:00
Eric Engestrom
61c76a3b36
ci/b2c: set default value for B2C_TELEGRAF_IMAGE in the job
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33825 >
2025-03-01 22:50:51 +00:00
Eric Engestrom
ee050d7af3
ci/b2c: set default value for B2C_MACHINE_REGISTRATION_IMAGE in the job
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33825 >
2025-03-01 22:50:51 +00:00
Eric Engestrom
37ab59afce
ci/b2c: use B2C_JOB_TEMPLATE directly
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33825 >
2025-03-01 22:50:51 +00:00
Eric Engestrom
1310b75cbf
ci/b2c: explain better why we don't clone mesa
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33825 >
2025-03-01 22:50:51 +00:00
Eric Engestrom
c0b4b132d3
ci/b2c: fix comment location
...
I think the `after_script:` was simply inserted in the middle.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33825 >
2025-03-01 22:50:51 +00:00
Valentine Burley
2dfbade2d8
ci: Update kernel to include i.MX8MP dtb
...
The only change since the previous kernel is that the new one includes
the device tree blob for the NXP i.MX8MP development board.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33800 >
2025-03-01 09:19:56 +00:00
Guilherme Gallo
11f8dffec4
ci/angle: remove USE_ANGLE variable
...
Now that every ANGLE use is covered by tag consistency checks
(structured tagging), we don't need the USE_ANGLE flag anymore, because
if we have ANGLE_TAG set, it means that ANGLE is required in this job.
In detail, it means that the test job has inherited ANGLE_TAG from
`.container-builds-angle`.
Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33421 >
2025-02-28 01:33:34 +00:00
Guilherme Gallo
94f5cf901e
ci/angle: condense angle variables in one job
...
Use .test-angle as a full-featured job to be extended to enable angle
usage in the job. Right now, it comes with USE_ANGLE=1 flag and the
respective structural tag.
Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33421 >
2025-02-28 01:33:34 +00:00
Guilherme Gallo
3b01d6e900
ci/angle: test-time structured tag checks
...
Let's setup the CI to enable runner script to check if the ANGLE
binaries from the container/rootfs are matching the intended version.
Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33421 >
2025-02-28 01:33:34 +00:00
Guilherme Gallo
74cb5105b4
ci/angle: add structured tag check to ANGLE build time
...
Now everytime the ANGLE is built, we check if the conditional tag
declared in the .gitlab-ci/conditional-build-image-tags.yml is matching
the current version of the build script and its inputs
Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33421 >
2025-02-28 01:33:34 +00:00
Guilherme Gallo
6827133592
ci: copy structural tag files to rootfs
...
Enhance the LAVA build script to copy tag files into the rootfs directory.
This allows test jobs to verify they are using the intended version by
having access to the tag files during testing.
Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33421 >
2025-02-28 01:33:34 +00:00
Guilherme Gallo
f13b95ad5c
ci: add support for structural tagging
...
Make structural tagging functions available for both test and build
scripts.
Introduces the update_tag.sh helper for listing, checking, and updating
deterministic tags.
Also adds the ci_tag_build_time_check and ci_tag_test_time_check
functions to validate tags during build and test phases, ensuring
consistent component versioning.
Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33421 >
2025-02-28 01:33:34 +00:00
Guilherme Gallo
775c2c3254
ci: add _error_msg for internal messaging
...
So it can be reused in functions that wants to print errors without
dealing with GitLab sections.
Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33421 >
2025-02-28 01:33:34 +00:00
Guilherme Gallo
1cc2c738bb
ci: setup-test-env: Prefer functions over aliases
...
Alias are not exportable, in the current situation of the build scripts,
we use alias to deal with sections, but it infers that all build scripts
will be included in a bigger one that has already included
`setup-test-env.sh`.
With the structured tagging, we do a dry run of all build scripts, to
early check if the tagging is valid, before building stuff.
So changing alias to functions will not have an effect on the current
setup, but it also removes the need to reinclude library bash scripts in
some situations, as described above.
Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33421 >
2025-02-28 01:33:34 +00:00
Guilherme Gallo
8f20eb849b
ci/android: add missing pre/post build scripts
...
The android_build.sh script was not calling the container_pre_build.sh
and container_post_build.sh, we will need that to make the structural
tagging early checking to work. And also do the same cleanup and
configuration made for other container build jobs.
Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33421 >
2025-02-28 01:33:34 +00:00
Eric Engestrom
007998db14
ci/build: build-test the dri2 code
...
To prevent things like https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33669
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33692 >
2025-02-26 09:14:39 +00:00
Xaver Hugl
53b40a40f4
increase required wayland-protocols version to 1.41
...
This version contains the color management protocol.
This commit also adjusts the build-wayland script to mention
that the DEBIAN_BASE_TAG also has to be bumped.
Signed-off-by: Xaver Hugl <xaver.hugl@kde.org >
Reviewed-by: Eric Engestrom <eric@igalia.com >
Reviewed-by: Sebastian Wick <sebastian.wick@redhat.com >
Acked-by: Daniel Stone <daniels@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32038 >
2025-02-25 21:24:11 +00:00
Eric Engestrom
a66e227748
ci/build: lower the delay to start build-only jobs
...
What we need is a way to tell GitLab "queue `build-only` jobs after
`build-for-tests` jobs have started", to make sure that `build-only`
jobs don't start before `build-for-tests` jobs and thus delays test jobs
and the overall pipeline.
The best I had found was "queue `build-only` jobs after *all* the
`build-for-tests` jobs have finished", but this introduces a larger
delay than we want, and causes `build-only` jobs to often be the last
ones to finish in a pipeline, after test jobs that respect the 15min
runtime limit.
Instead, we can tell GitLab "queue `build-only` jobs after the
`build-for-tests` jobs have been queued for X minutes", which is closer
to what we want, and in particular this ensures the correct order of
*starting* jobs as long as the CI is not overwhelmed and doesn't manage
to actually start a queued `build-for-tests` job within 5min, in which
case I'd argue we don't care about job order anymore because we have
bigger problems anyway and likely everything's going to timeout.
This also gets rid of the hard-to-maintain `.build-for-tests-jobs` list
of `needs:`, which also needed to be manually merged in half the jobs.
The trade-off is that we need to make a (shallow) copy of the
`.container+build-rules` list, that replaces all the `when: on_success`
with `when: delayed` + `start_in: 5 minutes`. This means that we'll need
to make sure the two lists of conditions remain identical, but this
seems more manageable; nevertheless, I added a comment to remind us.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33564 >
2025-02-22 19:18:08 +00:00
Eric Engestrom
38cf205f67
ci/build: add explicit build-for-tests or build-only to all jobs
...
This prevents mistakes when moving one job and not realising another job
was extending from it.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33564 >
2025-02-22 19:18:08 +00:00
Eric Engestrom
c20984a5ad
ci/build: split meson-build into build-for-tests and build-only
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33564 >
2025-02-22 19:18:08 +00:00
Eric Engestrom
d0d28eaa0c
ci/build: move .use-debian/x86_64_build out of the generic .meson-build and into the debian/x86_64 jobs
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33564 >
2025-02-22 19:18:08 +00:00
Eric Engestrom
b29ba5637e
ci/build: remove a couple of unnecessary "override needs: to the same value"
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33564 >
2025-02-22 19:18:08 +00:00
Eric Engestrom
2c79c1be4a
ci: move shader-db test job from build jobs yaml to test jobs yaml
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33564 >
2025-02-22 19:18:08 +00:00
Eric Engestrom
64e68b1ac0
ci/alpine: control wayland & wayland-protocols versions
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33659 >
2025-02-22 09:58:49 +00:00
Eric Engestrom
3695a6d3fe
ci/alpine: pin the release to avoid random unexpected changes
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33659 >
2025-02-22 09:58:49 +00:00