mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-20 05:10:11 +01:00
ci: Delete the kernel+rootfs jobs
LAVA and baremetal now use the test-* containers as the base for their rootfs. Signed-off-by: Valentine Burley <valentine.burley@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34451>
This commit is contained in:
parent
13db56320b
commit
26bc35c8f9
21 changed files with 7 additions and 490 deletions
|
|
@ -381,7 +381,6 @@ sanity:
|
|||
DEBIAN_TEST_GL_TAG
|
||||
DEBIAN_TEST_VK_TAG
|
||||
FEDORA_X86_64_BUILD_TAG
|
||||
KERNEL_ROOTFS_TAG
|
||||
KERNEL_TAG
|
||||
PKG_REPO_REV
|
||||
WINDOWS_X64_BUILD_TAG
|
||||
|
|
|
|||
|
|
@ -1,3 +1,3 @@
|
|||
variables:
|
||||
CONDITIONAL_BUILD_ANGLE_TAG: e7c547147880538db994f480292364c7
|
||||
CONDITIONAL_BUILD_PIGLIT_TAG: 2fb6336d546595b0f1cd811db2797155
|
||||
CONDITIONAL_BUILD_ANGLE_TAG: be4f59328ef607bcbf5048a3f6f27410
|
||||
CONDITIONAL_BUILD_PIGLIT_TAG: a19e424b8a3f020dbf1b9dd29f220a4f
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@
|
|||
# .gitlab-ci/image-tags.yml tags:
|
||||
# DEBIAN_TEST_ANDROID_TAG
|
||||
# DEBIAN_TEST_GL_TAG
|
||||
# KERNEL_ROOTFS_TAG
|
||||
|
||||
set -uex
|
||||
|
||||
|
|
|
|||
|
|
@ -6,7 +6,6 @@
|
|||
# DEBIAN_BASE_TAG
|
||||
# DEBIAN_TEST_GL_TAG
|
||||
# DEBIAN_TEST_VK_TAG
|
||||
# KERNEL_ROOTFS_TAG
|
||||
|
||||
set -uex
|
||||
|
||||
|
|
|
|||
|
|
@ -5,7 +5,6 @@
|
|||
# .gitlab-ci/image-tags.yml tags:
|
||||
# DEBIAN_TEST_ANDROID_TAG
|
||||
# DEBIAN_BASE_TAG
|
||||
# KERNEL_ROOTFS_TAG
|
||||
|
||||
set -uex
|
||||
|
||||
|
|
|
|||
|
|
@ -6,7 +6,6 @@
|
|||
# DEBIAN_TEST_ANDROID_TAG
|
||||
# DEBIAN_TEST_GL_TAG
|
||||
# DEBIAN_TEST_VK_TAG
|
||||
# KERNEL_ROOTFS_TAG
|
||||
|
||||
set -ue -o pipefail
|
||||
|
||||
|
|
|
|||
|
|
@ -3,7 +3,6 @@
|
|||
# When changing this file, you need to bump the following
|
||||
# .gitlab-ci/image-tags.yml tags:
|
||||
# DEBIAN_TEST_VK_TAG
|
||||
# KERNEL_ROOTFS_TAG
|
||||
|
||||
set -ex
|
||||
|
||||
|
|
|
|||
|
|
@ -8,7 +8,6 @@ set -ex
|
|||
# DEBIAN_BASE_TAG
|
||||
# DEBIAN_BUILD_TAG
|
||||
# FEDORA_X86_64_BUILD_TAG
|
||||
# KERNEL_ROOTFS_TAG
|
||||
|
||||
uncollapsed_section_start mold "Building mold"
|
||||
|
||||
|
|
|
|||
|
|
@ -8,7 +8,6 @@ uncollapsed_section_start piglit "Building piglit"
|
|||
# .gitlab-ci/image-tags.yml tags:
|
||||
# DEBIAN_TEST_GL_TAG
|
||||
# DEBIAN_TEST_VK_TAG
|
||||
# KERNEL_ROOTFS_TAG
|
||||
|
||||
# Do a very early check to make sure the tag is correct without the need of
|
||||
# setting up the environment variables locally
|
||||
|
|
|
|||
|
|
@ -7,7 +7,6 @@
|
|||
# When changing this file, you need to bump the following
|
||||
# .gitlab-ci/image-tags.yml tags:
|
||||
# DEBIAN_TEST_GL_TAG
|
||||
# KERNEL_ROOTFS_TAG
|
||||
|
||||
set -uex
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@
|
|||
# When changing this file, you need to bump the following
|
||||
# .gitlab-ci/image-tags.yml tags:
|
||||
# DEBIAN_TEST_VIDEO_TAG
|
||||
# KERNEL_ROOTFS_TAG
|
||||
|
||||
set -uex
|
||||
|
||||
|
|
|
|||
|
|
@ -3,7 +3,6 @@
|
|||
# When changing this file, you need to bump the following
|
||||
# .gitlab-ci/image-tags.yml tags:
|
||||
# DEBIAN_TEST_GL_TAG
|
||||
# KERNEL_ROOTFS_TAG
|
||||
|
||||
set -uex
|
||||
|
||||
|
|
|
|||
|
|
@ -14,7 +14,6 @@ uncollapsed_section_start wayland "Building Wayland"
|
|||
# DEBIAN_TEST_GL_TAG
|
||||
# DEBIAN_TEST_VK_TAG
|
||||
# FEDORA_X86_64_BUILD_TAG
|
||||
# KERNEL_ROOTFS_TAG
|
||||
|
||||
export LIBWAYLAND_VERSION="1.21.0"
|
||||
export WAYLAND_PROTOCOLS_VERSION="1.41"
|
||||
|
|
|
|||
|
|
@ -3,7 +3,6 @@
|
|||
# When changing this file, you need to bump the following
|
||||
# .gitlab-ci/image-tags.yml tags:
|
||||
# DEBIAN_BASE_TAG
|
||||
# KERNEL_ROOTFS_TAG
|
||||
|
||||
set -e
|
||||
|
||||
|
|
|
|||
|
|
@ -131,7 +131,6 @@ debian/x86_64_build-base:
|
|||
variables:
|
||||
MESA_BASE_IMAGE: "debian/x86_64_build-base"
|
||||
MESA_BASE_TAG: *debian-x86_64_build-base
|
||||
MESA_ARTIFACTS_BASE_TAG: *debian-x86_64_build-base
|
||||
LLVM_VERSION: *debian-x86_64-llvm
|
||||
needs:
|
||||
- debian/x86_64_build-base
|
||||
|
|
@ -644,49 +643,6 @@ debian/arm64_test-vk:
|
|||
variables:
|
||||
FIRMWARE_FILES: |
|
||||
|
||||
.kernel+rootfs:
|
||||
extends:
|
||||
- .container+build-rules
|
||||
- .debian-container-version
|
||||
stage: container
|
||||
timeout: 120m
|
||||
variables:
|
||||
GIT_STRATEGY: fetch
|
||||
MESA_ROOTFS_TAG: &kernel-rootfs ${KERNEL_ROOTFS_TAG}
|
||||
DISTRIBUTION_TAG: &distribution-tag-arm "${MESA_ROOTFS_TAG}--${KERNEL_TAG}--${MESA_ARTIFACTS_TAG}--${MESA_TEMPLATES_COMMIT}"
|
||||
script:
|
||||
- .gitlab-ci/container/lava_build.sh
|
||||
|
||||
kernel+rootfs_x86_64:
|
||||
extends:
|
||||
- .use-debian/x86_64_build-base
|
||||
- .kernel+rootfs
|
||||
- .firmware_x86_64
|
||||
- .container-builds-x86_64
|
||||
image: "$FDO_BASE_IMAGE"
|
||||
variables:
|
||||
DEBIAN_ARCH: "amd64"
|
||||
DISTRIBUTION_TAG: &distribution-tag-x86_64 "${MESA_ROOTFS_TAG}--${KERNEL_TAG}--${MESA_ARTIFACTS_BASE_TAG}--${MESA_TEMPLATES_COMMIT}"
|
||||
LLVM_VERSION: *debian-x86_64-llvm
|
||||
|
||||
kernel+rootfs_arm64:
|
||||
extends:
|
||||
- .use-debian/arm64_build
|
||||
- .kernel+rootfs
|
||||
- .firmware_arm64
|
||||
- .container-builds-arm64
|
||||
variables:
|
||||
DEBIAN_ARCH: "arm64"
|
||||
LLVM_VERSION: *debian-arm64-llvm
|
||||
|
||||
kernel+rootfs_arm32:
|
||||
extends:
|
||||
- kernel+rootfs_arm64
|
||||
- .firmware_arm32
|
||||
variables:
|
||||
DEBIAN_ARCH: "armhf"
|
||||
LLVM_VERSION: &debian-arm32-llvm 15 # no armhf builds for LLVM
|
||||
|
||||
# x86_64 image with ARM64 & ARM32 kernel & rootfs for baremetal testing
|
||||
.debian/baremetal_arm_test:
|
||||
extends:
|
||||
|
|
|
|||
|
|
@ -1,418 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
# shellcheck disable=SC1091 # The relative paths in this file only become valid at runtime.
|
||||
# shellcheck disable=SC2034 # Variables are used in scripts called from here
|
||||
# shellcheck disable=SC2086 # we want word splitting
|
||||
# shellcheck disable=SC2016 # non-expanded variables are intentional
|
||||
# When changing this file, you need to bump the following
|
||||
# .gitlab-ci/image-tags.yml tags:
|
||||
# KERNEL_ROOTFS_TAG
|
||||
# If you need to update the fluster vectors cache without updating the fluster revision,
|
||||
# you can update the FLUSTER_VECTORS_VERSION tag in .gitlab-ci/image-tags.yml.
|
||||
# When changing FLUSTER_REVISION, KERNEL_ROOTFS_TAG needs to be updated as well to rebuild
|
||||
# the rootfs.
|
||||
|
||||
set -e
|
||||
|
||||
. .gitlab-ci/setup-test-env.sh
|
||||
|
||||
set -o xtrace
|
||||
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
: "${LLVM_VERSION:?llvm version not set!}"
|
||||
export FIRMWARE_FILES="${FIRMWARE_FILES}"
|
||||
|
||||
check_minio()
|
||||
{
|
||||
S3_PATH="${S3_HOST}/${S3_KERNEL_BUCKET}/$1/${DISTRIBUTION_TAG}/${DEBIAN_ARCH}"
|
||||
if curl -L --retry 4 -f --retry-delay 60 -s \
|
||||
"https://${S3_PATH}/done"; then
|
||||
echo "Remote files are up-to-date, skip rebuilding them."
|
||||
exit
|
||||
fi
|
||||
}
|
||||
|
||||
check_minio "${FDO_UPSTREAM_REPO}"
|
||||
check_minio "${CI_PROJECT_PATH}"
|
||||
|
||||
. .gitlab-ci/container/container_pre_build.sh
|
||||
|
||||
# Install rust, which we'll be using for deqp-runner. It will be cleaned up at the end.
|
||||
. .gitlab-ci/container/build-rust.sh
|
||||
|
||||
if [[ "$DEBIAN_ARCH" = "arm64" ]]; then
|
||||
BUILD_CL="ON"
|
||||
BUILD_VK="ON"
|
||||
GCC_ARCH="aarch64-linux-gnu"
|
||||
KERNEL_ARCH="arm64"
|
||||
|
||||
elif [[ "$DEBIAN_ARCH" = "armhf" ]]; then
|
||||
BUILD_CL="OFF"
|
||||
BUILD_VK="OFF"
|
||||
GCC_ARCH="arm-linux-gnueabihf"
|
||||
KERNEL_ARCH="arm"
|
||||
. .gitlab-ci/container/create-cross-file.sh armhf
|
||||
CONTAINER_ARCH_PACKAGES=(
|
||||
libegl1-mesa-dev:armhf
|
||||
libelf-dev:armhf
|
||||
libgbm-dev:armhf
|
||||
libgles2-mesa-dev:armhf
|
||||
libpng-dev:armhf
|
||||
libudev-dev:armhf
|
||||
libvulkan-dev:armhf
|
||||
libwaffle-dev:armhf
|
||||
libwayland-dev:armhf
|
||||
libx11-xcb-dev:armhf
|
||||
libxkbcommon-dev:armhf
|
||||
)
|
||||
else
|
||||
BUILD_CL="ON"
|
||||
BUILD_VK="ON"
|
||||
GCC_ARCH="x86_64-linux-gnu"
|
||||
KERNEL_ARCH="x86_64"
|
||||
CONTAINER_ARCH_PACKAGES=(
|
||||
libasound2-dev libcap-dev libfdt-dev libva-dev p7zip wine
|
||||
)
|
||||
fi
|
||||
|
||||
# Determine if we're in a cross build.
|
||||
if [[ -e /cross_file-$DEBIAN_ARCH.txt ]]; then
|
||||
EXTRA_MESON_ARGS="--cross-file /cross_file-$DEBIAN_ARCH.txt"
|
||||
EXTRA_CMAKE_ARGS="-DCMAKE_TOOLCHAIN_FILE=/toolchain-$DEBIAN_ARCH.cmake"
|
||||
|
||||
if [ $DEBIAN_ARCH = arm64 ]; then
|
||||
RUST_TARGET="aarch64-unknown-linux-gnu"
|
||||
elif [ $DEBIAN_ARCH = armhf ]; then
|
||||
RUST_TARGET="armv7-unknown-linux-gnueabihf"
|
||||
fi
|
||||
rustup target add $RUST_TARGET
|
||||
export EXTRA_CARGO_ARGS="--target $RUST_TARGET"
|
||||
|
||||
export ARCH=${KERNEL_ARCH}
|
||||
export CROSS_COMPILE="${GCC_ARCH}-"
|
||||
fi
|
||||
|
||||
# no need to remove these at end, image isn't saved at the end
|
||||
CONTAINER_EPHEMERAL=(
|
||||
arch-test
|
||||
automake
|
||||
bc
|
||||
"clang-${LLVM_VERSION}"
|
||||
cmake
|
||||
curl
|
||||
mmdebstrap
|
||||
git
|
||||
glslang-tools
|
||||
jq
|
||||
libdrm-dev
|
||||
libegl1-mesa-dev
|
||||
libxext-dev
|
||||
libfontconfig-dev
|
||||
libgbm-dev
|
||||
libgl-dev
|
||||
libgles2-mesa-dev
|
||||
libglu1-mesa-dev
|
||||
libglx-dev
|
||||
libpng-dev
|
||||
libssl-dev
|
||||
libudev-dev
|
||||
libvulkan-dev
|
||||
libwaffle-dev
|
||||
libwayland-dev
|
||||
libx11-xcb-dev
|
||||
libxcb-dri2-0-dev
|
||||
libxkbcommon-dev
|
||||
libwayland-dev
|
||||
"lld-${LLVM_VERSION}"
|
||||
ninja-build
|
||||
openssh-server
|
||||
patch
|
||||
protobuf-compiler
|
||||
python-is-python3
|
||||
python3-distutils
|
||||
python3-mako
|
||||
python3-numpy
|
||||
python3-serial
|
||||
python3-venv
|
||||
unzip
|
||||
wayland-protocols
|
||||
zstd
|
||||
)
|
||||
|
||||
[ "$BUILD_CL" == "ON" ] && CONTAINER_EPHEMERAL+=(
|
||||
ocl-icd-opencl-dev
|
||||
)
|
||||
|
||||
|
||||
echo "deb [trusted=yes] https://gitlab.freedesktop.org/gfx-ci/ci-deb-repo/-/raw/${PKG_REPO_REV}/ ${FDO_DISTRIBUTION_VERSION%-*} main" | tee /etc/apt/sources.list.d/gfx-ci_.list
|
||||
|
||||
. .gitlab-ci/container/debian/maybe-add-llvm-repo.sh
|
||||
|
||||
apt-get update
|
||||
apt-get install -y --no-remove \
|
||||
-o Dpkg::Options::='--force-confdef' -o Dpkg::Options::='--force-confold' \
|
||||
"${CONTAINER_EPHEMERAL[@]}" \
|
||||
"${CONTAINER_ARCH_PACKAGES[@]}" \
|
||||
${EXTRA_LOCAL_PACKAGES}
|
||||
|
||||
export ROOTFS=/lava-files/rootfs-${DEBIAN_ARCH}
|
||||
mkdir -p "$ROOTFS"
|
||||
|
||||
# rootfs packages
|
||||
PKG_BASE=(
|
||||
tzdata mount
|
||||
)
|
||||
PKG_CI=(
|
||||
firmware-realtek
|
||||
bash ca-certificates curl
|
||||
initramfs-tools jq netcat-openbsd dropbear openssh-server
|
||||
libasan8
|
||||
libubsan1
|
||||
git
|
||||
python3-dev python3-pip python3-setuptools python3-wheel
|
||||
weston # Wayland
|
||||
xinit xserver-xorg-core xwayland # X11
|
||||
)
|
||||
PKG_MESA_DEP=(
|
||||
libdrm2 libsensors5 libexpat1 # common
|
||||
libvulkan1 # vulkan
|
||||
libx11-6 libx11-xcb1 libxcb-dri2-0 libxcb-dri3-0 libxcb-glx0 libxcb-present0 libxcb-randr0 libxcb-shm0 libxcb-sync1 libxcb-xfixes0 libxdamage1 libxext6 libxfixes3 libxkbcommon0 libxrender1 libxshmfence1 libxxf86vm1 # X11
|
||||
)
|
||||
PKG_DEP=(
|
||||
libpng16-16
|
||||
libva-wayland2
|
||||
libwaffle-1-0
|
||||
libpython3.11 python3 python3-lxml python3-mako python3-numpy python3-packaging python3-pil python3-renderdoc python3-requests python3-simplejson python3-yaml # Python
|
||||
sntp
|
||||
strace
|
||||
waffle-utils
|
||||
zstd
|
||||
)
|
||||
# arch dependent rootfs packages
|
||||
[ "$DEBIAN_ARCH" = "arm64" ] && PKG_ARCH=(
|
||||
libgl1 libglu1-mesa
|
||||
firmware-linux-nonfree firmware-qcom-media
|
||||
libfontconfig1
|
||||
)
|
||||
[ "$DEBIAN_ARCH" = "amd64" ] && PKG_ARCH=(
|
||||
firmware-amd-graphics
|
||||
firmware-misc-nonfree
|
||||
gstreamer1.0-plugins-bad gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-ugly gstreamer1.0-tools gstreamer1.0-vaapi libgstreamer1.0-0 # Fluster
|
||||
libgl1 libglu1-mesa
|
||||
inetutils-syslogd iptables libcap2
|
||||
libfontconfig1
|
||||
spirv-tools
|
||||
libelf1 libfdt1 "libllvm${LLVM_VERSION}"
|
||||
libva2 libva-drm2
|
||||
socat
|
||||
sysvinit-core
|
||||
wine
|
||||
)
|
||||
[ "$DEBIAN_ARCH" = "armhf" ] && PKG_ARCH=(
|
||||
firmware-misc-nonfree
|
||||
)
|
||||
|
||||
[ "$BUILD_CL" == "ON" ] && PKG_ARCH+=(
|
||||
clinfo
|
||||
"libclang-cpp${LLVM_VERSION}"
|
||||
"libclang-common-${LLVM_VERSION}-dev"
|
||||
ocl-icd-libopencl1
|
||||
)
|
||||
[ "$BUILD_VK" == "ON" ] && PKG_ARCH+=(
|
||||
libvulkan-dev
|
||||
)
|
||||
|
||||
mmdebstrap \
|
||||
--variant=apt \
|
||||
--arch="${DEBIAN_ARCH}" \
|
||||
--components main,contrib,non-free-firmware \
|
||||
--customize-hook='.gitlab-ci/container/get-firmware-from-source.sh "$ROOTFS" "$FIRMWARE_FILES"' \
|
||||
--include "${PKG_BASE[*]} ${PKG_CI[*]} ${PKG_DEP[*]} ${PKG_MESA_DEP[*]} ${PKG_ARCH[*]}" \
|
||||
bookworm \
|
||||
"$ROOTFS/" \
|
||||
"http://deb.debian.org/debian" \
|
||||
"deb [trusted=yes] https://gitlab.freedesktop.org/gfx-ci/ci-deb-repo/-/raw/${PKG_REPO_REV}/ ${FDO_DISTRIBUTION_VERSION%-*} main" \
|
||||
"${LLVM_APT_REPO:-}"
|
||||
|
||||
############### Install mold
|
||||
. .gitlab-ci/container/build-mold.sh
|
||||
|
||||
############### Building
|
||||
STRIP_CMD="${GCC_ARCH}-strip"
|
||||
mkdir -p $ROOTFS/usr/lib/$GCC_ARCH
|
||||
|
||||
############### Build libclc
|
||||
|
||||
if [ "$BUILD_CL" = "ON" ]; then
|
||||
rm -rf /usr/lib/clc/*
|
||||
. .gitlab-ci/container/build-libclc.sh
|
||||
mkdir -p $ROOTFS/usr/{share,lib}/clc
|
||||
mv /usr/share/clc/spirv*-mesa3d-.spv $ROOTFS/usr/share/clc/
|
||||
ln -s /usr/share/clc/spirv64-mesa3d-.spv $ROOTFS/usr/lib/clc/
|
||||
ln -s /usr/share/clc/spirv-mesa3d-.spv $ROOTFS/usr/lib/clc/
|
||||
fi
|
||||
|
||||
############### Build Vulkan validation layer (for zink)
|
||||
if [ "$DEBIAN_ARCH" = "amd64" ]; then
|
||||
. .gitlab-ci/container/build-vulkan-validation.sh
|
||||
mv /usr/lib/x86_64-linux-gnu/libVkLayer_khronos_validation.so $ROOTFS/usr/lib/x86_64-linux-gnu/
|
||||
mkdir -p $ROOTFS/usr/share/vulkan/explicit_layer.d
|
||||
mv /usr/share/vulkan/explicit_layer.d/* $ROOTFS/usr/share/vulkan/explicit_layer.d/
|
||||
fi
|
||||
|
||||
############### Build apitrace
|
||||
. .gitlab-ci/container/build-apitrace.sh
|
||||
mkdir -p $ROOTFS/apitrace
|
||||
mv /apitrace/build $ROOTFS/apitrace
|
||||
rm -rf /apitrace
|
||||
|
||||
############### Build ANGLE
|
||||
if [ "$DEBIAN_ARCH" != "armhf" ]; then
|
||||
ANGLE_TARGET=linux \
|
||||
. .gitlab-ci/container/build-angle.sh
|
||||
mv /angle $ROOTFS/.
|
||||
rm -rf /angle
|
||||
fi
|
||||
|
||||
############### Build dEQP runner
|
||||
. .gitlab-ci/container/build-deqp-runner.sh
|
||||
mkdir -p $ROOTFS/usr/bin
|
||||
mv /usr/local/bin/*-runner $ROOTFS/usr/bin/.
|
||||
|
||||
|
||||
############### Build dEQP
|
||||
|
||||
DEQP_API=tools \
|
||||
DEQP_TARGET=default \
|
||||
. .gitlab-ci/container/build-deqp.sh
|
||||
|
||||
DEQP_API=GL \
|
||||
DEQP_TARGET=surfaceless \
|
||||
. .gitlab-ci/container/build-deqp.sh
|
||||
|
||||
DEQP_API=GLES \
|
||||
DEQP_TARGET=surfaceless \
|
||||
. .gitlab-ci/container/build-deqp.sh
|
||||
|
||||
if [ "$BUILD_VK" == "ON" ]; then
|
||||
DEQP_API=VK \
|
||||
DEQP_TARGET=default \
|
||||
. .gitlab-ci/container/build-deqp.sh
|
||||
|
||||
if [ "$DEBIAN_ARCH" == "amd64" ]; then
|
||||
DEQP_API=VK-main \
|
||||
DEQP_TARGET=default \
|
||||
. .gitlab-ci/container/build-deqp.sh
|
||||
fi
|
||||
fi
|
||||
|
||||
rm -rf /VK-GL-CTS
|
||||
|
||||
mv /deqp-* $ROOTFS/.
|
||||
|
||||
|
||||
############### Build SKQP
|
||||
if [[ "$DEBIAN_ARCH" = "arm64" ]] \
|
||||
|| [[ "$DEBIAN_ARCH" = "amd64" ]]; then
|
||||
. .gitlab-ci/container/build-skqp.sh
|
||||
mv /skqp $ROOTFS/.
|
||||
fi
|
||||
|
||||
############### Build piglit
|
||||
PIGLIT_OPTS="-DPIGLIT_USE_WAFFLE=ON
|
||||
-DPIGLIT_USE_GBM=ON
|
||||
-DPIGLIT_USE_WAYLAND=ON
|
||||
-DPIGLIT_USE_X11=ON
|
||||
-DPIGLIT_BUILD_GLX_TESTS=ON
|
||||
-DPIGLIT_BUILD_EGL_TESTS=ON
|
||||
-DPIGLIT_BUILD_WGL_TESTS=OFF
|
||||
-DPIGLIT_BUILD_GL_TESTS=ON
|
||||
-DPIGLIT_BUILD_GLES1_TESTS=ON
|
||||
-DPIGLIT_BUILD_GLES2_TESTS=ON
|
||||
-DPIGLIT_BUILD_GLES3_TESTS=ON
|
||||
-DPIGLIT_BUILD_CL_TESTS=$BUILD_CL
|
||||
-DPIGLIT_BUILD_VK_TESTS=$BUILD_VK
|
||||
-DPIGLIT_BUILD_DMA_BUF_TESTS=ON" \
|
||||
. .gitlab-ci/container/build-piglit.sh
|
||||
mv /piglit $ROOTFS/.
|
||||
|
||||
############### Build libva tests
|
||||
if [[ "$DEBIAN_ARCH" = "amd64" ]]; then
|
||||
. .gitlab-ci/container/build-va-tools.sh
|
||||
mv /va/bin/* $ROOTFS/usr/bin/
|
||||
fi
|
||||
|
||||
############### Build Crosvm
|
||||
if [[ ${DEBIAN_ARCH} = "amd64" ]]; then
|
||||
. .gitlab-ci/container/build-crosvm.sh
|
||||
mv /usr/local/bin/crosvm $ROOTFS/usr/bin/
|
||||
mv /usr/local/lib/libvirglrenderer.* $ROOTFS/usr/lib/$GCC_ARCH/
|
||||
mkdir -p $ROOTFS/usr/local/libexec/
|
||||
mv /usr/local/libexec/virgl* $ROOTFS/usr/local/libexec/
|
||||
fi
|
||||
|
||||
############### Build ci-kdl
|
||||
. .gitlab-ci/container/build-kdl.sh
|
||||
mv /ci-kdl $ROOTFS/
|
||||
|
||||
############### Install fluster
|
||||
if [[ ${DEBIAN_ARCH} = "amd64" ]]; then
|
||||
. .gitlab-ci/container/build-fluster.sh
|
||||
mkdir -p "${ROOTFS}/usr/local/"
|
||||
mv /usr/local/fluster "${ROOTFS}/usr/local/"
|
||||
fi
|
||||
|
||||
############### Build local stuff for use by igt and kernel testing, which
|
||||
############### will reuse most of our container build process from a specific
|
||||
############### hash of the Mesa tree.
|
||||
if [[ -e ".gitlab-ci/local/build-rootfs.sh" ]]; then
|
||||
. .gitlab-ci/local/build-rootfs.sh
|
||||
fi
|
||||
|
||||
############### Delete rust, since the tests won't be compiling anything.
|
||||
rm -rf /root/.cargo
|
||||
rm -rf /root/.rustup
|
||||
|
||||
############### Delete firmware files we don't need
|
||||
if [ "$DEBIAN_ARCH" = "amd64" ]; then
|
||||
dpkg -L firmware-misc-nonfree | grep -v "i915" | xargs rm || true
|
||||
fi
|
||||
|
||||
############### Fill rootfs
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
cp .gitlab-ci/setup-test-env.sh $ROOTFS/.
|
||||
pip3 install --break-system-packages yq
|
||||
cp .gitlab-ci/container/setup-rootfs.sh $ROOTFS/.
|
||||
cp .gitlab-ci/container/strip-rootfs.sh $ROOTFS/.
|
||||
cp .gitlab-ci/container/debian/llvm-snapshot.gpg.key $ROOTFS/.
|
||||
cp .gitlab-ci/container/debian/winehq.gpg.key $ROOTFS/.
|
||||
chroot $ROOTFS bash /setup-test-env.sh
|
||||
chroot $ROOTFS bash /setup-rootfs.sh
|
||||
chroot $ROOTFS bash /strip-rootfs.sh
|
||||
rm $ROOTFS/{llvm-snapshot,winehq}.gpg.key
|
||||
rm "$ROOTFS/setup-test-env.sh"
|
||||
rm "$ROOTFS/setup-rootfs.sh"
|
||||
rm "$ROOTFS/strip-rootfs.sh"
|
||||
|
||||
# Copy all tags to the rootfs, so test jobs can check if they are using the intended version
|
||||
TAG_FILE_DIR="$(get_tag_file)"
|
||||
if [ -d "${TAG_FILE_DIR}" ]; then
|
||||
cp --parents -r "${TAG_FILE_DIR}" $ROOTFS/.
|
||||
fi
|
||||
|
||||
if [ "${DEBIAN_ARCH}" = "arm64" ]; then
|
||||
mkdir -p /lava-files/rootfs-arm64/lib/firmware/qcom/sm8350/ # for firmware imported later
|
||||
fi
|
||||
|
||||
ROOTFSTAR="lava-rootfs.tar.zst"
|
||||
du -ah "$ROOTFS" | sort -h | tail -100
|
||||
pushd $ROOTFS
|
||||
tar --zstd -cf /lava-files/${ROOTFSTAR} .
|
||||
popd
|
||||
|
||||
. .gitlab-ci/container/container_post_build.sh
|
||||
|
||||
ci-fairy s3cp --token-file "${S3_JWT_FILE}" /lava-files/"${ROOTFSTAR}" \
|
||||
https://${S3_PATH}/"${ROOTFSTAR}"
|
||||
|
||||
touch /lava-files/done
|
||||
ci-fairy s3cp --token-file "${S3_JWT_FILE}" /lava-files/done https://${S3_PATH}/done
|
||||
|
|
@ -5,7 +5,6 @@
|
|||
# DEBIAN_TEST_GL_TAG
|
||||
# DEBIAN_TEST_VIDEO_TAG
|
||||
# DEBIAN_TEST_VK_TAG
|
||||
# KERNEL_ROOTFS_TAG
|
||||
|
||||
set -eux -o pipefail
|
||||
|
||||
|
|
|
|||
|
|
@ -6,7 +6,6 @@
|
|||
# DEBIAN_TEST_GL_TAG
|
||||
# DEBIAN_TEST_VIDEO_TAG
|
||||
# DEBIAN_TEST_VK_TAG
|
||||
# KERNEL_ROOTFS_TAG
|
||||
set -ex
|
||||
|
||||
section_start strip-rootfs "Stripping rootfs"
|
||||
|
|
|
|||
|
|
@ -27,7 +27,6 @@ variables:
|
|||
DEBIAN_TEST_GL_TAG: "20250423-rootfs"
|
||||
DEBIAN_TEST_VIDEO_TAG: "20250423-rootfs"
|
||||
DEBIAN_TEST_VK_TAG: "20250423-rootfs"
|
||||
KERNEL_ROOTFS_TAG: "20250423-rootfs"
|
||||
|
||||
DEBIAN_PYUTILS_TAG: "20250422-ci-fairy"
|
||||
|
||||
|
|
|
|||
|
|
@ -53,16 +53,11 @@ Kconfigs location
|
|||
Updating image tags
|
||||
-------------------
|
||||
|
||||
Every kernel uprev should update 3 image tags, located at two files.
|
||||
Every kernel uprev should update the following tag:
|
||||
|
||||
:code:`.gitlab-ci/container/gitlab-ci.yml` tag
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
- **KERNEL_URL** for the location of the new kernel
|
||||
|
||||
:code:`.gitlab-ci/image-tags.yml` tags
|
||||
:code:`.gitlab-ci/image-tags.yml` tag
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
- **KERNEL_ROOTFS_TAG** to rebuild rootfs with the new kernel
|
||||
- **DEBIAN_X86_TEST_GL_TAG** to ensure that the new rootfs is being used by the GitLab x86 jobs
|
||||
- **KERNEL_TAG** to use the new kernel
|
||||
|
||||
Development routine
|
||||
-------------------
|
||||
|
|
|
|||
|
|
@ -249,11 +249,11 @@ To integrate structured tagging for a new component (for example, ``my_component
|
|||
variables:
|
||||
MY_COMPONENT_TAG: "${CONDITIONAL_BUILD_MY_COMPONENT_TAG}"
|
||||
|
||||
- It is time to modify the job that builds the component image to include the new component tag. Let's suppose that only the ``kernel+rootfs_x86_64`` job builds the component image. We need to add the new component tag to the job as an extension:
|
||||
- It is time to modify the job that builds the component image to include the new component tag. Let's suppose that only the ``debian/arm64_test-gl`` job builds the component image. We need to add the new component tag to the job as an extension:
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
kernel+rootfs_x86_64:
|
||||
debian/arm64_test-gl:
|
||||
extends:
|
||||
- .container-builds-my-component
|
||||
- .container-builds-my-component2
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue