Compared to the existing Debian-based x86_64_pyutils container, this
Alpine-based variant reduces the image size by approximately 83%.
Include all the necessary python artifacts, including lava_job_submitter
in the container to avoid having to download them at the start of each
test job.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34980>
With the rest of the Qualcomm devices moving to LAVA, we can remove the
original (!) bare-metal infrastructure, leaving only the Igalia RPi
devices still using bare-metal. When those are converted to b2c, we can
remove the rest of bare-metal.
Signed-off-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35148>
Firmware packages continue to grow in size, so stop installing them in
the test-base image.
The necessary firmware is now collected and uploaded per vendor in an
external repository.
LAVA devices can opt into optional firmware by specifying the name of the
archive via LAVA_FIRMWARE.
For bare-metal, Qualcomm firmware required for DUTs in the Google lab is
included in the baremetal image.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13051
Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34861>
Introduce per-component CI_BUILD_COMPONENTS_* variables to allow
more flexible composition of CI_BUILD_COMPONENTS, and add these to
every container job by listing them in .container.
Also rework the -arm64 and -x86_64 definitions, which were still
based on the old kernel+rootfs layout. Split them into -gl and -vk,
but keep -arm32, which builds fewer components.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34813>
Including the kernel image in test-base requires rebuilding every
x86_64 container image on each kernel uprev, even though only the
crosvm jobs use this kernel.
Move the download to runtime and update the distribution tags to avoid
triggering container rebuilds on kernel changes.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34813>
The S3_PATH_FLUSTER variable already included the archive filename.
Appending `vectors.tar.zst` again during upload caused the file to be
stored at the wrong location, which broke retrieval in subsequent builds.
Fix this behavior and rename the variable to S3_FLUSTER_TAR to make its
purpose clearer and avoid future confusion.
Fixes: a3fb667b1d ("ci: Include Fluster vectors in the rootfs")
Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34787>
Cloning a dependency from the last commit in the main branch of a repo,
besides is not the usual practice here, is risky because it can fail without
relation with the activity in Mesa. In fact, it happens sporadically, that a
build fails from an error from depot-tools. So, start stabilizing that by
fixing the commit of depot-tools we use. Later we can face the uprev of this
dependency.
Signed-off-by: Sergi Blanch Torne <sergi.blanch.torne@collabora.com>
Reviewed-by: Vignesh Raman <vignesh.raman@collabora.com>
Reviewed-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34788>
Downloading them at runtime proved too slow and unreliable.
Keep the logic to upload the vectors to S3 as it's faster, the build job
takes around 5-10 minutes when downloading from S3, but 30+ minutes to
using Fluster to download the vectors.
Move this to the build-fluster.sh script to allow re-using it in the
test-video container.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451>
Move the logic for installing Fluster into $ROOTFS from build-fluster.sh
into the main lava_build.sh script.
This allows building Fluster in contexts that don't use a rootfs, such as
test containers.
Also move the section inside the build script.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451>
Update the script to make it useable for both container and rootfs jobs.
Move the rootfs-specific logic into the main lava_build.sh script, and
don't install ci-fairy, because that revision can't be used for s3cp
anymore after the migration.
v2 (Valentine)
* Move the rootfs-specific logic instead of adding a new script
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>