Commit Graph

2320 Commits

Author SHA1 Message Date
David Heidelberg
5e44cee47d ci: inject gfx-ci/linux S3 artifacts without rebuilding containers
We need update kernel often. We need test kernel changes often.

Introduced `KERNEL_EXTERNAL_TAG` to differ between `KERNEL_TAG` which is
also used to rebuild the containers. We don't need rebuild containers
for the external kernel, so this way we don't have to.

Updating kernel goes wruuuuuum.

Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23563>
2023-11-07 12:22:09 +00:00
Alyssa Rosenzweig
0e481bf463 ci: Opt out asahi from clang-format
I'm still 100% a believer in clang-format enforcement, but given the difficult
constraints upstream CI has, I no longer believe it is productive or fair to do
this enforcement upstream. Instead, it can be (and effectively is) enforced much
more inexpensively in the Asahi tree. It is far better for me to insert a
"reformat asahi" commit once in a while when I rebase the Asahi tree, than to
shoot down an unrelated upstream MR because someone forgot to ninja
clang-format.

I regret adding the clang-format lint to CI. To those who have lost merges over
it, I am sorry. I'm learning from my mistakes and trying to do better.

I would encourage other drivers in the clang-format include to follow suit, but
doing this effectively requires a driver/hardware tree to do the enforcement. (I
would also encourage that, as it is much friendlier to upstream CI, but that's a
different discussion.)

For now, let's opt out asahi at the least.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26030>
2023-11-04 14:13:09 +00:00
Eric Engestrom
5be1972f61 ci: bump image tags to rebuild deqp
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26013>
2023-11-04 12:44:37 +00:00
Eric Engestrom
37970fa703 ci/build-deqp: print more detailed information about what deqp version is running
`git describe` tells you that you have N patches on top of tag T, but
not what these patches are, and the commit hash is useless as it is only
valid during the container build.

Replace this with:
- the tag that we are checking out
- the list of patches applied on top of it

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26013>
2023-11-04 12:44:36 +00:00
Eric Engestrom
124b4097f3 ci/build-deqp: move mkdir earlier
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26013>
2023-11-04 12:44:36 +00:00
Eric Engestrom
a61dcdd4b1 ci/build-deqp: split deqp version into a variable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26013>
2023-11-04 12:44:36 +00:00
Eric Engestrom
22f4ca2cf3 ci/build-deqp: stop ignoring failures while fetching patches
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26013>
2023-11-04 12:44:36 +00:00
Eric Engestrom
be18be9deb Revert "ci: backport two mesh/task query fixes for VKCTS"
This reverts commit dcc4e1b4d7.

The hashes added there are incorrect, and fixing them regresses a bunch
of drivers, so let's just revert for now, and the next commit fixes the
bug that allowed incorrect backports to go in undetected.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26013>
2023-11-04 12:44:36 +00:00
Daniel Stone
80b87c18d1 ci: Try really hard to print final result string
a630 has been completing jobs, and then corrupting the very last line of
UART output - the one where we pass the overall result back from the DUT
to the job. The bare-metal monitor will wait for this line to appear,
never see it, and then the job times out.

Since this line is the most critical one of all to get out, just spam
the prints to try to make sure they get through.

Signed-off-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26032>
2023-11-03 21:17:42 +00:00
Samuel Pitoiset
dcc4e1b4d7 ci: backport two mesh/task query fixes for VKCTS
RADV would need these fixes to avoid skipping a ton of tests.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25953>
2023-11-02 08:22:26 +01:00
Guilherme Gallo
60cd0af06c ci/lava: Add unit tests covering job definition
Add two unit tests related to the LAVA job definition.

test_generate_lava_job_definition_sanity checks for the most important
fields, deploy actions, namespaces etc.

test_lava_job_definition compares the generated definition with static
skeleton YAML files committed inside tests/data folder.

Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25912>
2023-11-02 03:31:50 +00:00
Guilherme Gallo
fdd51ef584 ci/lava: Enable SSH by default in fastboot devices
It is only applied in Collabora farm, since we still haven't seen many
UART hangs in Lima farm.

Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25912>
2023-11-02 03:31:50 +00:00
Guilherme Gallo
654f7f783f ci/lava: Make SSH definition wrap the UART one
Simplify both UART and SSH job definitions module to share common
building blocks themselves.

- generate_lava_yaml_payload is now a LAVAJobDefinition method, so
  dropped the Strategy pattern between both modules
- if SSH is supported and UART is not enforced, default to SSH
- when SSH is enabled, wrap the last deploy action to run the SSH server
  and rewrite the test actions, which should not change due to the boot
  method
- create a constants module to load environment variables

Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25912>
2023-11-02 03:31:50 +00:00
Guilherme Gallo
76922f8404 ci/lava: Create LAVAJobDefinition
To absorb complexity from the building blocks to generate job
definitions for each mode:
- fastboot-uart
- uboot-uart
- uboot-ssh

Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25912>
2023-11-02 03:31:50 +00:00
Guilherme Gallo
77c3091fdd ci/lava: Refactor UART definition building blocks
Break it to smaller pieces with variable size (fastboot has 3 deploy
actions and uboot only one) to build the base definition nicely in the
end.

Extract kernel/dtb attachment and init_stage1 extraction into functions
to be later reused by SSH job definition.

Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25912>
2023-11-02 03:31:50 +00:00
Guilherme Gallo
af9273eb4f ci/lava: Fix imports formatting
Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25912>
2023-11-02 03:31:50 +00:00
Guilherme Gallo
f7f2d26e3b ci/lava: Use project_name instead of hardcoded mesa
The LAVA job submitter is being used by other fd.o projects, such as
`drm/ci`, so let's make it generate more generic job definitions and
test cases.

Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25912>
2023-11-02 03:31:49 +00:00
David Heidelberg
4ddfc4503d ci: fixup section names
Copy-paste typo + missed section_end update.

Fixes: 2815e5c94d ("ci: hide Mesa install phase")

Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25982>
2023-11-02 00:32:49 +00:00
Max R
fdb58f5b6c ci: Uprev virglrenderer
Include the latest virglrenderer version.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25947>
2023-11-01 20:33:01 +00:00
Rob Clark
5521840cbc ci: Only strip debug symbols
Hopefully this will get us more useful backtraces in CI (for ex, with
traces replay) while maintaining _most_ of the artifact size benefits of
stripping:

  -rwxr-xr-x 1 robclark robclark  50M Oct 30 11:47 msm_dri.so.strip-debug
  -rwxr-xr-x 1 robclark robclark  40M Oct 30 11:47 msm_dri.so.strip
  -rwxr-xr-x 1 robclark robclark 129M Oct 30 11:47 msm_dri.so.orig

Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25962>
2023-10-31 20:13:30 +00:00
David Heidelberg
5e4ba9b166 ci/lava: add wine into the amd64 ephemeral container packages
We don't have to install DXVK in chroot.

Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25843>
2023-10-31 01:00:25 +00:00
David Heidelberg
81aaeb80f7 Revert "ci/wine: move wine configuration into rootfs where is wine available"
This reverts commit 63b42e4007fec8746f7a3848b3816d36124dcbfd.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25843>
2023-10-31 01:00:25 +00:00
David Heidelberg
1e13c7ca46 ci/wine: move wine configuration into rootfs where is wine available
As we removed wine from builds, we need to use the one installed in rootfs.

Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25843>
2023-10-31 01:00:25 +00:00
David Heidelberg
35c7b5e159 ci/alpine: do not store apk cache
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25843>
2023-10-31 01:00:25 +00:00
David Heidelberg
17d6baff82 ci: drop debootstrap, unused
Most likely was historically used there, but not recently.

Reviewed-by: Martin Roukala <martin.roukala@mupuf.org>
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25843>
2023-10-31 01:00:25 +00:00
David Heidelberg
e4d6da5ba3 ci: bashify scripts, use arrays
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25843>
2023-10-31 01:00:25 +00:00
David Heidelberg
e678483ecd ci: always cleanup pip and cargo leftovers
This is leftovers from the compilation/installation phase.

In the build containers this took around ~ 400 MB.

Reviewed-by: Martin Roukala <martin.roukala@mupuf.org>
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25843>
2023-10-31 01:00:25 +00:00
David Heidelberg
c6928a4e6e ci: drop mingw and wine from the x86_64 build container
MinGW is currently disabled and new implementation will handle things
differently anyway.

Reviewed-by: Martin Roukala <martin.roukala@mupuf.org>
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25843>
2023-10-31 01:00:25 +00:00
David Heidelberg
ef217a9221 ci: simplify debian-rusticl-testing definition
This was originally split due testing both rusticl and clover.

Reviewed-by: Martin Roukala <martin.roukala@mupuf.org>
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25843>
2023-10-31 01:00:25 +00:00
David Heidelberg
1f2b50fbc2 ci: drop clover from release builds and remove rusticl build
Let's hope we don't see Clover in next release.

For rusticl, drop debian-rusticl and keep the debian-rusticl-testing.

Reviewed-by: Martin Roukala <martin.roukala@mupuf.org>
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25843>
2023-10-31 01:00:25 +00:00
David Heidelberg
2815e5c94d ci: hide Mesa install phase
So far we show installation part together with meson tests.

Reviewed-by: Martin Roukala <martin.roukala@mupuf.org>
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25843>
2023-10-31 01:00:25 +00:00
David Heidelberg
fa7ca1f70a ci: bump tags
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25843>
2023-10-31 01:00:25 +00:00
Mike Blumenkrantz
f2fb2df6a3 ci: bump VVL to 1.3.269
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25914>
2023-10-27 00:44:49 +00:00
Martin Roukala (né Peres)
c580d604fb ci/b2c: fix artifact collection
It seems like gitlab puts symlinks in artifacts rather than following
them. Let's fix this by copying the results folder from the job_folder
in an after script.

Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25902>
2023-10-26 17:02:39 +00:00
Eric Engestrom
fc62df19b7 ci/b2c: change artifacts path to match baremetal and LAVA
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25815>
2023-10-22 21:23:01 +00:00
Emma Anholt
06fd469110 ci: drop skip for glx-swap-copy.
This will always be a skip now that we dropped GLX_OML_swap_method.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25650>
2023-10-20 10:03:43 +00:00
Eric Anholt
97b2afa16a ci/bare-metal: Drop the 2 vs 1 exit code from poe_run.
This exit code was used for the intra-job retries on the other bare-metal
run scripts, but poe_run doesn't do that.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25790>
2023-10-19 07:42:15 +00:00
Eric Anholt
e2e3e4cbf3 ci: Stop doing internal retries in bare-metal.
We have job-level retry on failure now, and will continue to need to in
order to work around fd.o infrastructure flakes.  If we stop doing retry
inside the job, then we can crank down the gitlab-level timeouts on test
jobs to be closer to our CI guidelines and avoid blocking a runner for an
hour when things go wrong (for example, cheza #16 failing to boot in a
recognized way and continuously looping due to the intra-job retry).
Plus, the job logs will be more readable when you don't have two boots in
one job, and we'll get the flakes surfaced in our monitoring dashboards.

If internal retries were really doing useful work we may see an increase
in flakes as a result of this.  I'm committing to turning off boards or
reducing coverage as necessary to handle this.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25790>
2023-10-19 07:42:15 +00:00
Samuel Pitoiset
8f63419733 ci: bump the number of tests per group from 500 to 5000 for Vulkan drivers
Except for lvp which already forces 1.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25476>
2023-10-18 12:52:37 +00:00
Samuel Pitoiset
ef0997baf1 ci: update CTS to vulkan-cts-1.3.7.0
This contains many new tests, especially shader object tests.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25476>
2023-10-18 12:52:37 +00:00
Karol Herbst
02c433dd87 rusticl: bump rustc version to 1.66
This adds a few goodies I care about:
- bool::then_some (1.62)
- let-else statements (1.65)

FireFox ESR is at 1.66 so this bump is according to the Rust updated
policy.

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Reviewed-by: @LingMan <18294-LingMan@users.noreply.gitlab.freedesktop.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24062>
2023-10-14 09:34:56 +00:00
Corentin Noël
aef37305a1 ci: Uprev virglrenderer
Include the latest virglrenderer version.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25561>
2023-10-12 19:22:33 +00:00
David Heidelberg
f93b11822a ci/traces: always export piglit EXTRA_ARGS
When a job doesn't define them, it won't get passed to piglit otherwise.

Fixes: 5ab60581da ("ci/traces: keep images for every job except the performance testing")

Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25654>
2023-10-11 21:18:13 +00:00
Eric Engestrom
9c2b523c53 ci/b2c: use latest mesa-trigger image
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25643>
2023-10-11 06:37:20 +00:00
Eric Engestrom
298f2db76d ci/b2c: move to the shiny new gfx-ci/ci-tron repo
We've successfully moved the repo to its new location now that the
project is ready for general use.

Update the config to use the new paths.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25643>
2023-10-11 06:37:19 +00:00
David Heidelberg
9786ab7ecd ci/traces: rename upload function to reflect it works with S3
Cosmetic change.

Acked-by: Emma Anholt <emma@anholt.net>
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25606>
2023-10-10 12:46:51 +00:00
David Heidelberg
5ab60581da ci/traces: keep images for every job except the performance testing
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8354

Acked-by: Emma Anholt <emma@anholt.net>
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25606>
2023-10-10 12:46:51 +00:00
David Heidelberg
82cfed9758 ci/traces: upload only missing trace images
Right now, S3 always returns something, so we need to check
the content-type .

Acked-by: Emma Anholt <emma@anholt.net>
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25606>
2023-10-10 12:46:51 +00:00
Eric Engestrom
6387c17504 ci: print deqp version in the job log
This allows to easily verify which version was actually running in some
job, to notice if an image tag wasn't properly bumped, for instance.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21850>
2023-10-07 21:38:02 +00:00
David Heidelberg
45c234700f ci: do not report failed job when flakes reporting fails
It's not critical for the job itself.

Suggested-by: Daniel Stone <daniels@collabora.com>
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25604>
2023-10-07 20:15:51 +00:00