Eric Engestrom
d425847793
ci: always abort if the curl download fails
...
Reported-by: @Valentine
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34120 >
2025-03-24 20:45:52 +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
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
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
Martin Roukala (né Peres)
06b5aa9965
ci/b2c: allow jobs to opt-in into the new mars setup command
...
This machine registration command makes it possible to check for the
specified list of machine tags rather than just doing a full comparison
of tags between the expected state and the current state.
This is beneficial for multiple reasons:
* It enables having more than one GPU in a host, and we let the machine
registration container unbind the unwanted GPU before Mesa CI even
executes anything
* It makes it possible to alter the boot process so as to use a kernel
with a different architecture than the default kernel of CI-Tron uses
* Adding or modifying tags which are unused by a job won't fail the
first job after the new machine registration container lands.
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33551 >
2025-02-15 14:22:24 +02:00
Martin Roukala (né Peres)
f72ee5e587
ci/b2c: de-duplicate the download of install.tar
...
By having the DUTs download and extract from a CI-Tron artifact, we
deduplicate the downloading of the build artifact across all DUTs from
a CI farm, leading to quicker and more reliable jobs, and lower
bandwidth usage on both FD.o and the CI gateway.
Inside the CI-Tron infra, this should also drastically reduce the job
submission time by removing needless copies (executorctl -> executor,
executor -> S3, S3 -> B2C, and even B2C -> NBD when applicable).
As an additional bonus, the size of install.tar is reduced by virtue of
zstd providing better compression than zip/deflate.
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32927 >
2025-02-05 04:35:07 +00:00
Martin Roukala (né Peres)
ab3c0c4fa3
ci/b2c: add support for diskless DUTs
...
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32927 >
2025-02-05 04:35:07 +00:00
Martin Roukala (né Peres)
41bf984d0e
ci/b2c: allow using another initrd that contains firmware
...
This allows DUTs that require firmware to boot reliably to provide them
without needing to include them in the kernel image.
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org >
Reviewed-by: Eric Engestrom <None>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33162 >
2025-01-24 23:36:56 +00:00
Martin Roukala (né Peres)
668cc6dc0c
ci/b2c: allow jobs to select a file in the dtb url
...
This makes it possible to have a single DTB url serving multiple DUTs,
without paying much of a cost for it.
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org >
Reviewed-by: Eric Engestrom <None>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33162 >
2025-01-24 23:36:56 +00:00
Martin Roukala (né Peres)
047d3953ee
ci/b2c: allow defining a boot watchdog
...
This will be helpful for DUTs that do not boot reliably due to firmware
issue as it will allow us to specify a boot retry count that only
counts towards booting linux and not other issues found during test
execution (like hitting a GPU hang).
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org >
Reviewed-by: Eric Engestrom <None>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32572 >
2025-01-21 12:46:31 +00:00
Martin Roukala (né Peres)
82557f9141
ci/b2c: use the runner description rather than ID
...
Gitlab's runner ID is an integer while CI-Tron's is a string. Let's use
the runner description in the job description since this is what
CI-Tron expects.
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org >
Reviewed-by: Eric Engestrom <None>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32572 >
2025-01-21 12:46:31 +00:00
Martin Roukala (né Peres)
564aea509a
ci/b2c: run the machine registration check before the test container
...
This was a regression I introduced in 6f9614c187 and it took me until
now to realize :o
Fixes: 6f9614c187 ("ci/b2c: Reduce the length of the kernel cmdline")
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32628 >
2024-12-31 05:31:09 +00:00
Martin Roukala (né Peres)
a96d039561
ci/b2c: modernize the job description to use run_*
...
The `b2c.container` and `b2c.service` keywords are deprecated, so
let's use the modern names: b2c.run, and b2c.run_service.
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32628 >
2024-12-31 05:31:09 +00:00
Eric Engestrom
c8f5477685
ci/b2c: properly escape double-quoted container command
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31939 >
2024-11-05 20:30:22 +00:00
Eric Engestrom
28655b26f5
ci/b2c: make initramfs & kernel urls optional
...
If omitted, the default ones are used.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31570 >
2024-10-22 05:29:07 +00:00
Eric Engestrom
fa7c4b148b
ci/b2c: allow B2C_DTB_URL to be set to an empty string to unset it
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31570 >
2024-10-22 05:29:06 +00:00
Eric Engestrom
6843a7951b
ci/b2c: make B2C_JOB_WARN_REGEX optional
...
Fixes: bfd4db0476 ("radv/ci: move amdgpu-specific kernel message warning to src/amd/ci/")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29368 >
2024-05-24 05:58:26 +00:00
Martin Roukala (né Peres)
6f9614c187
ci/b2c: Reduce the length of the kernel cmdline
...
The qcom boards I am about to introduce do not support long kernel
cmdline, so reduce its size by making use of b2c's extra argument URL.
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org >
Signed-off-by: Eric Engestrom <eric@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29026 >
2024-05-23 06:58:01 +00:00
Eric Engestrom
b4a94b0969
ci/b2c: allow setting timeouts in seconds
...
Allows for tighter timeouts.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29201 >
2024-05-15 14:34:56 +00:00
Eric Engestrom
9a07db7cd8
ci/b2c: rename B2C_TIMEOUT_* to B2C_TIMEOUT_CONSOLE_ACTIVITY_*
...
More verbose, sure, but also much easier to understand.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29201 >
2024-05-15 14:34:56 +00:00
Eric Engestrom
09021a1c01
ci/b2c: rename B2C_TIMEOUT_FIRST_* to B2C_TIMEOUT_FIRST_CONSOLE_ACTIVITY_*
...
More verbose, sure, but also much easier to understand.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29201 >
2024-05-15 14:34:56 +00:00
Martin Roukala (né Peres)
a589225827
ci/b2c: allow setting the DTB to be used
...
This will be used by upcoming new CI jobs.
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28902 >
2024-04-24 15:46:32 +00:00
Martin Roukala (né Peres)
a0f350429b
ci/b2c: fix the cmdline_extra variable name
...
The variable name should have been named `kernel_cmdline_extra`, so
let's rename it to match the expectations of the rest of Mesa.
Fixes: 4362d5913f ("ci/b2c: import all variables starting with `B2C_`")
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26686 >
2023-12-14 13:27:40 +00:00
Eric Engestrom
f8e583d537
ci/b2c: identify dut by its id instead of its tags
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26653 >
2023-12-13 18:29:23 +00:00
Eric Engestrom
8eabe3d913
ci/b2c: tags are mandatory
...
Jobs without tags are not accepted, so there is no point in having
support for creating them.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26653 >
2023-12-13 18:29:23 +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
Martin Roukala (né Peres)
0c10cbff55
ci/b2c: switch containers to a back-up ahead of valve-infra renaming
...
We are about to rename mupuf/valve-infra into gfx-ci/ci-tron.
While most resources will transparently be redirected, gitlab does
not allow us to keep our containers during the migration.
To work around that, I uploaded the current containers to Eric's fork
of valve-infra. Let's use these containers until the migration is over!
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25593 >
2023-10-07 04:42:03 +00:00
Martin Roukala (né Peres)
a65fe883f4
ci/b2c: allow not specifying a reboot condition
...
This will allow us to only enable this feature where we need it.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22596 >
2023-04-21 09:45:18 +00:00
Martin Roukala (né Peres)
19920f126e
radv/ci: remove locally-deleted files from the job bucket
...
This makes the downloaded artifacts reflect the content of the folder
as generated by the job.
In this the case of vkcts, this removes from the downloaded artifacts
the log files that were deemed uninteresting by deqp-runner.
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org >
Acked-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20415 >
2022-12-22 14:54:43 +00:00
Martin Roukala (né Peres)
bb91117204
ci/b2c: add support for the new format of CI_RUNNER_TAGS
...
Seems like Gitlab did not follow their own documentation:
```
CI_RUNNER_TAGS 8.10 0.5 A comma-separated list of the runner tags.
```
But it would seem like a gitlab update brought json-style lists which
broke:
```
CI_RUNNER_TAGS = '["keywords-gateway", "CI-gateway"]'
```
This commit adds support for both style.
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org >
Reviewed-by: John Brooks <john@fastquake.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18923 >
2022-10-01 12:53:08 +00:00
Martin Roukala (né Peres)
acbec0fa23
radv/ci: allow specifying a warning pattern
...
This will be used to detect soft resets without aborting the run, but
still make the job fail.
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org >
Acked-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16841 >
2022-07-02 13:06:49 +03:00
Andres Gomez
fd2f529a6b
ci: move b2c artifacts to its own directory
...
Signed-off-by: Andres Gomez <agomez@igalia.com >
Reviewed-by: Martin Roukala <martin.roukala@mupuf.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17184 >
2022-06-24 05:32:53 +00:00