ci: Uprev Crosvm
And use my fork while we upstream some improvements to Crosvm that make it more appropriate for using in CI. Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> Reviewed-by: Corentin Noël <corentin.noel@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12828>
This commit is contained in:
@@ -410,7 +410,7 @@ debian/x86_test-gl:
|
|||||||
variables:
|
variables:
|
||||||
FDO_DISTRIBUTION_EXEC: 'env KERNEL_URL=${KERNEL_URL} FDO_CI_CONCURRENT=${FDO_CI_CONCURRENT} bash .gitlab-ci/container/${CI_JOB_NAME}.sh'
|
FDO_DISTRIBUTION_EXEC: 'env KERNEL_URL=${KERNEL_URL} FDO_CI_CONCURRENT=${FDO_CI_CONCURRENT} bash .gitlab-ci/container/${CI_JOB_NAME}.sh'
|
||||||
KERNEL_URL: &kernel-rootfs-url "https://gitlab.freedesktop.org/gfx-ci/linux/-/archive/v5.15-for-mesa-ci-540a4af22d71/linux-v5.15-for-mesa-ci-540a4af22d71.tar.bz2"
|
KERNEL_URL: &kernel-rootfs-url "https://gitlab.freedesktop.org/gfx-ci/linux/-/archive/v5.15-for-mesa-ci-540a4af22d71/linux-v5.15-for-mesa-ci-540a4af22d71.tar.bz2"
|
||||||
MESA_IMAGE_TAG: &debian-x86_test-gl "2021-11-17-syslogd-removal"
|
MESA_IMAGE_TAG: &debian-x86_test-gl "2021-11-18-crosvm"
|
||||||
|
|
||||||
# Debian 11 based x86 test image for VK
|
# Debian 11 based x86 test image for VK
|
||||||
debian/x86_test-vk:
|
debian/x86_test-vk:
|
||||||
|
@@ -2,47 +2,11 @@
|
|||||||
|
|
||||||
set -ex
|
set -ex
|
||||||
|
|
||||||
# Pull down repositories that crosvm depends on to cros checkout-like locations.
|
CROSVM_VERSION=d2b6a64dd31c92a284a905c0f2483d0b222b1220
|
||||||
CROS_ROOT=/
|
git clone --single-branch -b for-mesa-ci --no-checkout https://gitlab.freedesktop.org/tomeu/crosvm.git /platform/crosvm
|
||||||
THIRD_PARTY_ROOT=$CROS_ROOT/third_party
|
|
||||||
mkdir -p $THIRD_PARTY_ROOT
|
|
||||||
AOSP_EXTERNAL_ROOT=$CROS_ROOT/aosp/external
|
|
||||||
mkdir -p $AOSP_EXTERNAL_ROOT
|
|
||||||
PLATFORM2_ROOT=/platform2
|
|
||||||
|
|
||||||
PLATFORM2_COMMIT=72e56e66ccf3d2ea48f5686bd1f772379c43628b
|
|
||||||
git clone --single-branch --no-checkout https://chromium.googlesource.com/chromiumos/platform2 $PLATFORM2_ROOT
|
|
||||||
pushd $PLATFORM2_ROOT
|
|
||||||
git checkout $PLATFORM2_COMMIT
|
|
||||||
popd
|
|
||||||
|
|
||||||
# minijail does not exist in upstream linux distros.
|
|
||||||
MINIJAIL_COMMIT=debdf5de5a0ae3b667bee2f8fb1f755b0b3f5a6c
|
|
||||||
git clone --single-branch --no-checkout https://android.googlesource.com/platform/external/minijail $AOSP_EXTERNAL_ROOT/minijail
|
|
||||||
pushd $AOSP_EXTERNAL_ROOT/minijail
|
|
||||||
git checkout $MINIJAIL_COMMIT
|
|
||||||
make
|
|
||||||
cp libminijail.so /usr/lib/x86_64-linux-gnu/
|
|
||||||
popd
|
|
||||||
|
|
||||||
# Pull the cras library for audio access.
|
|
||||||
ADHD_COMMIT=a1e0869b95c845c4fe6234a7b92fdfa6acc1e809
|
|
||||||
git clone --single-branch --no-checkout https://chromium.googlesource.com/chromiumos/third_party/adhd $THIRD_PARTY_ROOT/adhd
|
|
||||||
pushd $THIRD_PARTY_ROOT/adhd
|
|
||||||
git checkout $ADHD_COMMIT
|
|
||||||
popd
|
|
||||||
|
|
||||||
# Pull vHost (dataplane for virtio backend drivers)
|
|
||||||
VHOST_COMMIT=3091854e27242d09453004b011f701fa29c0b8e8
|
|
||||||
git clone --single-branch --no-checkout https://chromium.googlesource.com/chromiumos/third_party/rust-vmm/vhost $THIRD_PARTY_ROOT/rust-vmm/vhost
|
|
||||||
pushd $THIRD_PARTY_ROOT/rust-vmm/vhost
|
|
||||||
git checkout $VHOST_COMMIT
|
|
||||||
popd
|
|
||||||
|
|
||||||
CROSVM_VERSION=e42a43d880b0364b55559dbeade3af174f929001
|
|
||||||
git clone --single-branch --no-checkout https://chromium.googlesource.com/chromiumos/platform/crosvm /platform/crosvm
|
|
||||||
pushd /platform/crosvm
|
pushd /platform/crosvm
|
||||||
git checkout "$CROSVM_VERSION"
|
git checkout "$CROSVM_VERSION"
|
||||||
|
git submodule update --init
|
||||||
|
|
||||||
RUSTFLAGS='-L native=/usr/local/lib' cargo install \
|
RUSTFLAGS='-L native=/usr/local/lib' cargo install \
|
||||||
bindgen \
|
bindgen \
|
||||||
|
@@ -1,20 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
set -ex
|
|
||||||
|
|
||||||
mkdir -p /epoxy
|
|
||||||
pushd /epoxy
|
|
||||||
wget -qO- https://github.com/anholt/libepoxy/releases/download/1.5.8/libepoxy-1.5.8.tar.xz | tar -xJ --strip-components=1
|
|
||||||
meson build/ $EXTRA_MESON_ARGS
|
|
||||||
ninja -C build install
|
|
||||||
popd
|
|
||||||
rm -rf /epoxy
|
|
||||||
|
|
||||||
VIRGLRENDERER_VERSION=f2ab66c6c00065b2944f4cd9d965ee455c535271
|
|
||||||
git clone https://gitlab.freedesktop.org/virgl/virglrenderer.git --single-branch --no-checkout /virglrenderer
|
|
||||||
pushd /virglrenderer
|
|
||||||
git checkout "$VIRGLRENDERER_VERSION"
|
|
||||||
meson build/ $EXTRA_MESON_ARGS
|
|
||||||
ninja -C build install
|
|
||||||
popd
|
|
||||||
rm -rf /virglrenderer
|
|
@@ -58,6 +58,7 @@ apt-get install -y --no-remove \
|
|||||||
libclang-cpp11 \
|
libclang-cpp11 \
|
||||||
libcap2 \
|
libcap2 \
|
||||||
libegl1 \
|
libegl1 \
|
||||||
|
libepoxy-dev \
|
||||||
libfdt1 \
|
libfdt1 \
|
||||||
libllvmspirvlib11 \
|
libllvmspirvlib11 \
|
||||||
libxcb-shm0 \
|
libxcb-shm0 \
|
||||||
@@ -71,6 +72,16 @@ apt-get install -y --no-remove \
|
|||||||
|
|
||||||
. .gitlab-ci/container/container_pre_build.sh
|
. .gitlab-ci/container/container_pre_build.sh
|
||||||
|
|
||||||
|
############### Build libdrm
|
||||||
|
|
||||||
|
. .gitlab-ci/container/build-libdrm.sh
|
||||||
|
|
||||||
|
############### Build Crosvm
|
||||||
|
|
||||||
|
. .gitlab-ci/container/build-rust.sh
|
||||||
|
. .gitlab-ci/container/build-crosvm.sh
|
||||||
|
rm -rf /root/.cargo
|
||||||
|
|
||||||
############### Build kernel
|
############### Build kernel
|
||||||
|
|
||||||
export DEFCONFIG="arch/x86/configs/x86_64_defconfig"
|
export DEFCONFIG="arch/x86/configs/x86_64_defconfig"
|
||||||
@@ -81,28 +92,14 @@ export DEBIAN_ARCH=amd64
|
|||||||
mkdir -p /lava-files/
|
mkdir -p /lava-files/
|
||||||
. .gitlab-ci/container/build-kernel.sh
|
. .gitlab-ci/container/build-kernel.sh
|
||||||
|
|
||||||
############### Build libdrm
|
|
||||||
|
|
||||||
. .gitlab-ci/container/build-libdrm.sh
|
|
||||||
|
|
||||||
############### Build libclc
|
############### Build libclc
|
||||||
|
|
||||||
. .gitlab-ci/container/build-libclc.sh
|
. .gitlab-ci/container/build-libclc.sh
|
||||||
|
|
||||||
############### Build virglrenderer
|
|
||||||
|
|
||||||
. .gitlab-ci/container/build-virglrenderer.sh
|
|
||||||
|
|
||||||
############### Build piglit
|
############### Build piglit
|
||||||
|
|
||||||
PIGLIT_OPTS="-DPIGLIT_BUILD_CL_TESTS=ON -DPIGLIT_BUILD_DMA_BUF_TESTS=ON" . .gitlab-ci/container/build-piglit.sh
|
PIGLIT_OPTS="-DPIGLIT_BUILD_CL_TESTS=ON -DPIGLIT_BUILD_DMA_BUF_TESTS=ON" . .gitlab-ci/container/build-piglit.sh
|
||||||
|
|
||||||
############### Build Crosvm
|
|
||||||
|
|
||||||
. .gitlab-ci/container/build-rust.sh
|
|
||||||
. .gitlab-ci/container/build-crosvm.sh
|
|
||||||
rm -rf /root/.cargo
|
|
||||||
|
|
||||||
############### Build dEQP GL
|
############### Build dEQP GL
|
||||||
|
|
||||||
DEQP_TARGET=surfaceless . .gitlab-ci/container/build-deqp.sh
|
DEQP_TARGET=surfaceless . .gitlab-ci/container/build-deqp.sh
|
||||||
|
@@ -19,7 +19,7 @@ echo $@ > $DEQP_TEMP_DIR/crosvm-script.sh
|
|||||||
unset DISPLAY
|
unset DISPLAY
|
||||||
unset XDG_RUNTIME_DIR
|
unset XDG_RUNTIME_DIR
|
||||||
|
|
||||||
/usr/sbin/iptables-legacy -t nat -A POSTROUTING -o eth0 -j MASQUERADE
|
/usr/sbin/iptables-legacy -w -t nat -A POSTROUTING -o eth0 -j MASQUERADE
|
||||||
echo 1 > /proc/sys/net/ipv4/ip_forward
|
echo 1 > /proc/sys/net/ipv4/ip_forward
|
||||||
|
|
||||||
# Send output from guest to host
|
# Send output from guest to host
|
||||||
|
Reference in New Issue
Block a user