ci: build kernel in gfx-ci/linux and just use binaries in Mesa3D CI
This bring visible speedup while preparing the rootfs and containers. Acked-by: Guilherme Gallo <guilherme.gallo@collabora.com> Acked-by: Erico Nunes <nunes.erico@gmail.com> Signed-off-by: David Heidelberg <david.heidelberg@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24079>
This commit is contained in:
@@ -32,6 +32,7 @@ variables:
|
|||||||
PIPELINE_ARTIFACTS_BASE: ${S3_HOST}/artifacts/${CI_PROJECT_PATH}/${CI_PIPELINE_ID}
|
PIPELINE_ARTIFACTS_BASE: ${S3_HOST}/artifacts/${CI_PROJECT_PATH}/${CI_PIPELINE_ID}
|
||||||
# per-job artifact storage on MinIO
|
# per-job artifact storage on MinIO
|
||||||
JOB_ARTIFACTS_BASE: ${PIPELINE_ARTIFACTS_BASE}/${CI_JOB_ID}
|
JOB_ARTIFACTS_BASE: ${PIPELINE_ARTIFACTS_BASE}/${CI_JOB_ID}
|
||||||
|
KERNEL_IMAGE_BASE: https://${S3_HOST}/mesa-lava/gfx-ci/linux/${KERNEL_TAG}
|
||||||
# reference images stored for traces
|
# reference images stored for traces
|
||||||
PIGLIT_REPLAY_REFERENCE_IMAGES_BASE: "${S3_HOST}/mesa-tracie-results/$FDO_UPSTREAM_REPO"
|
PIGLIT_REPLAY_REFERENCE_IMAGES_BASE: "${S3_HOST}/mesa-tracie-results/$FDO_UPSTREAM_REPO"
|
||||||
# For individual CI farm status see .ci-farms folder
|
# For individual CI farm status see .ci-farms folder
|
||||||
|
@@ -69,7 +69,7 @@ for var in \
|
|||||||
JOB_ARTIFACTS_BASE \
|
JOB_ARTIFACTS_BASE \
|
||||||
JOB_RESULTS_PATH \
|
JOB_RESULTS_PATH \
|
||||||
JOB_ROOTFS_OVERLAY_PATH \
|
JOB_ROOTFS_OVERLAY_PATH \
|
||||||
KERNEL_IMAGE_BASE_URL \
|
KERNEL_IMAGE_BASE \
|
||||||
KERNEL_IMAGE_NAME \
|
KERNEL_IMAGE_NAME \
|
||||||
LD_LIBRARY_PATH \
|
LD_LIBRARY_PATH \
|
||||||
LP_NUM_THREADS \
|
LP_NUM_THREADS \
|
||||||
|
@@ -86,7 +86,7 @@ if [ "$HWCI_KVM" = "true" ]; then
|
|||||||
mkdir -p /lava-files
|
mkdir -p /lava-files
|
||||||
curl -L --retry 4 -f --retry-all-errors --retry-delay 60 \
|
curl -L --retry 4 -f --retry-all-errors --retry-delay 60 \
|
||||||
-o "/lava-files/${KERNEL_IMAGE_NAME}" \
|
-o "/lava-files/${KERNEL_IMAGE_NAME}" \
|
||||||
"${KERNEL_IMAGE_BASE_URL}/${KERNEL_IMAGE_NAME}"
|
"${KERNEL_IMAGE_BASE}/amd64/${KERNEL_IMAGE_NAME}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Fix prefix confusion: the build installs to $CI_PROJECT_DIR, but we expect
|
# Fix prefix confusion: the build installs to $CI_PROJECT_DIR, but we expect
|
||||||
|
@@ -24,11 +24,11 @@ if [[ $arch == "arm64" ]]; then
|
|||||||
pushd /baremetal-files
|
pushd /baremetal-files
|
||||||
|
|
||||||
curl -L --retry 4 -f --retry-all-errors --retry-delay 60 \
|
curl -L --retry 4 -f --retry-all-errors --retry-delay 60 \
|
||||||
-O "${ARTIFACTS_URL}"/Image
|
-O "${KERNEL_IMAGE_BASE}"/arm64/Image
|
||||||
curl -L --retry 4 -f --retry-all-errors --retry-delay 60 \
|
curl -L --retry 4 -f --retry-all-errors --retry-delay 60 \
|
||||||
-O "${ARTIFACTS_URL}"/Image.gz
|
-O "${KERNEL_IMAGE_BASE}"/arm64/Image.gz
|
||||||
curl -L --retry 4 -f --retry-all-errors --retry-delay 60 \
|
curl -L --retry 4 -f --retry-all-errors --retry-delay 60 \
|
||||||
-O "${ARTIFACTS_URL}"/cheza-kernel
|
-O "${KERNEL_IMAGE_BASE}"/arm64/cheza-kernel
|
||||||
|
|
||||||
DEVICE_TREES=""
|
DEVICE_TREES=""
|
||||||
DEVICE_TREES="$DEVICE_TREES apq8016-sbc.dtb"
|
DEVICE_TREES="$DEVICE_TREES apq8016-sbc.dtb"
|
||||||
@@ -38,7 +38,7 @@ if [[ $arch == "arm64" ]]; then
|
|||||||
|
|
||||||
for DTB in $DEVICE_TREES; do
|
for DTB in $DEVICE_TREES; do
|
||||||
curl -L --retry 4 -f --retry-all-errors --retry-delay 60 \
|
curl -L --retry 4 -f --retry-all-errors --retry-delay 60 \
|
||||||
-O "${ARTIFACTS_URL}/$DTB"
|
-O "${KERNEL_IMAGE_BASE}/arm64/$DTB"
|
||||||
done
|
done
|
||||||
|
|
||||||
popd
|
popd
|
||||||
@@ -47,7 +47,7 @@ elif [[ $arch == "armhf" ]]; then
|
|||||||
pushd /baremetal-files
|
pushd /baremetal-files
|
||||||
|
|
||||||
curl -L --retry 4 -f --retry-all-errors --retry-delay 60 \
|
curl -L --retry 4 -f --retry-all-errors --retry-delay 60 \
|
||||||
-O "${ARTIFACTS_URL}"/zImage
|
-O "${KERNEL_IMAGE_BASE}"/armhf/zImage
|
||||||
|
|
||||||
DEVICE_TREES=""
|
DEVICE_TREES=""
|
||||||
DEVICE_TREES="$DEVICE_TREES imx6q-cubox-i.dtb"
|
DEVICE_TREES="$DEVICE_TREES imx6q-cubox-i.dtb"
|
||||||
@@ -55,7 +55,7 @@ elif [[ $arch == "armhf" ]]; then
|
|||||||
|
|
||||||
for DTB in $DEVICE_TREES; do
|
for DTB in $DEVICE_TREES; do
|
||||||
curl -L --retry 4 -f --retry-all-errors --retry-delay 60 \
|
curl -L --retry 4 -f --retry-all-errors --retry-delay 60 \
|
||||||
-O "${ARTIFACTS_URL}/$DTB"
|
-O "${KERNEL_IMAGE_BASE}/armhf/$DTB"
|
||||||
done
|
done
|
||||||
|
|
||||||
popd
|
popd
|
||||||
|
@@ -1,54 +1,31 @@
|
|||||||
#!/bin/bash
|
#!/usr/bin/env bash
|
||||||
# shellcheck disable=SC2086 # we want word splitting
|
# shellcheck disable=SC2086 # we want word splitting
|
||||||
|
# shellcheck disable=SC2153
|
||||||
|
|
||||||
set -ex
|
set -ex
|
||||||
|
|
||||||
mkdir -p kernel
|
mkdir -p kernel
|
||||||
curl -L -s --retry 4 -f --retry-all-errors --retry-delay 60 ${KERNEL_URL} \
|
|
||||||
| tar -xj --strip-components=1 -C kernel
|
|
||||||
pushd kernel
|
pushd kernel
|
||||||
|
|
||||||
# The kernel doesn't like the gold linker (or the old lld in our debians).
|
|
||||||
# Sneak in some override symlinks during kernel build until we can update
|
|
||||||
# debian (they'll get blown away by the rm of the kernel dir at the end).
|
|
||||||
mkdir -p ld-links
|
|
||||||
for i in /usr/bin/*-ld /usr/bin/ld; do
|
|
||||||
i=$(basename $i)
|
|
||||||
ln -sf /usr/bin/$i.bfd ld-links/$i
|
|
||||||
done
|
|
||||||
|
|
||||||
NEWPATH=$(pwd)/ld-links
|
|
||||||
export PATH=$NEWPATH:$PATH
|
|
||||||
|
|
||||||
KERNEL_FILENAME=$(basename $KERNEL_URL)
|
|
||||||
export LOCALVERSION="$KERNEL_FILENAME"
|
|
||||||
./scripts/kconfig/merge_config.sh ${DEFCONFIG} ../.gitlab-ci/container/${KERNEL_ARCH}.config
|
|
||||||
make ${KERNEL_IMAGE_NAME}
|
|
||||||
for image in ${KERNEL_IMAGE_NAME}; do
|
|
||||||
cp arch/${KERNEL_ARCH}/boot/${image} /lava-files/.
|
|
||||||
done
|
|
||||||
|
|
||||||
if [[ -n ${DEVICE_TREES} ]]; then
|
|
||||||
make dtbs
|
|
||||||
cp ${DEVICE_TREES} /lava-files/.
|
|
||||||
fi
|
|
||||||
|
|
||||||
make modules
|
|
||||||
INSTALL_MOD_PATH=/lava-files/rootfs-${DEBIAN_ARCH}/ make modules_install
|
|
||||||
|
|
||||||
if [[ ${DEBIAN_ARCH} = "arm64" ]]; then
|
if [[ ${DEBIAN_ARCH} = "arm64" ]]; then
|
||||||
make Image.lzma
|
|
||||||
mkimage \
|
|
||||||
-f auto \
|
|
||||||
-A arm \
|
|
||||||
-O linux \
|
|
||||||
-d arch/arm64/boot/Image.lzma \
|
|
||||||
-C lzma\
|
|
||||||
-b arch/arm64/boot/dts/qcom/sdm845-cheza-r3.dtb \
|
|
||||||
/lava-files/cheza-kernel
|
|
||||||
KERNEL_IMAGE_NAME+=" cheza-kernel"
|
KERNEL_IMAGE_NAME+=" cheza-kernel"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
for image in ${KERNEL_IMAGE_NAME}; do
|
||||||
|
curl -L --retry 4 -f --retry-all-errors --retry-delay 60 \
|
||||||
|
-o "/lava-files/${image}" "${KERNEL_IMAGE_BASE}/${DEBIAN_ARCH}/${image}"
|
||||||
|
done
|
||||||
|
|
||||||
|
for dtb in ${DEVICE_TREES}; do
|
||||||
|
curl -L --retry 4 -f --retry-all-errors --retry-delay 60 \
|
||||||
|
-o "/lava-files/${dtb}" "${KERNEL_IMAGE_BASE}/${DEBIAN_ARCH}/${dtb}"
|
||||||
|
done
|
||||||
|
|
||||||
|
mkdir -p "/lava-files/rootfs-${DEBIAN_ARCH}"
|
||||||
|
curl -L --retry 4 -f --retry-all-errors --retry-delay 60 \
|
||||||
|
-O "${KERNEL_IMAGE_BASE}/${DEBIAN_ARCH}/modules.tar.zst"
|
||||||
|
tar --keep-directory-symlink --zstd -xf modules.tar.zst -C "/lava-files/rootfs-${DEBIAN_ARCH}/"
|
||||||
|
|
||||||
popd
|
popd
|
||||||
rm -rf kernel
|
rm -rf kernel
|
||||||
|
|
||||||
|
@@ -192,8 +192,7 @@ debian/android_build:
|
|||||||
debian/x86_64_test-base:
|
debian/x86_64_test-base:
|
||||||
extends: debian/x86_64_build-base
|
extends: debian/x86_64_build-base
|
||||||
variables:
|
variables:
|
||||||
KERNEL_URL: &kernel-rootfs-url "https://gitlab.freedesktop.org/gfx-ci/linux/-/archive/v6.3-for-mesa-ci-43c973a8ff91/linux-v6.3-for-mesa-ci-6fc749a2a59a.tar.bz2"
|
MESA_IMAGE_TAG: &debian-x86_64_test-base "${DEBIAN_BASE_TAG}--${KERNEL_TAG}"
|
||||||
MESA_IMAGE_TAG: &debian-x86_64_test-base ${DEBIAN_BASE_TAG}
|
|
||||||
|
|
||||||
.use-debian/x86_64_test-base:
|
.use-debian/x86_64_test-base:
|
||||||
extends:
|
extends:
|
||||||
@@ -331,9 +330,8 @@ fedora/x86_64_build:
|
|||||||
stage: container
|
stage: container
|
||||||
variables:
|
variables:
|
||||||
GIT_STRATEGY: fetch
|
GIT_STRATEGY: fetch
|
||||||
KERNEL_URL: *kernel-rootfs-url
|
|
||||||
MESA_ROOTFS_TAG: &kernel-rootfs ${KERNEL_ROOTFS_TAG}
|
MESA_ROOTFS_TAG: &kernel-rootfs ${KERNEL_ROOTFS_TAG}
|
||||||
DISTRIBUTION_TAG: &distribution-tag-arm "${MESA_ROOTFS_TAG}--${MESA_ARTIFACTS_TAG}--${MESA_TEMPLATES_COMMIT}"
|
DISTRIBUTION_TAG: &distribution-tag-arm "${MESA_ROOTFS_TAG}--${KERNEL_TAG}--${MESA_ARTIFACTS_TAG}--${MESA_TEMPLATES_COMMIT}"
|
||||||
script:
|
script:
|
||||||
- .gitlab-ci/container/lava_build.sh
|
- .gitlab-ci/container/lava_build.sh
|
||||||
|
|
||||||
@@ -344,7 +342,7 @@ kernel+rootfs_x86_64:
|
|||||||
image: "$FDO_BASE_IMAGE"
|
image: "$FDO_BASE_IMAGE"
|
||||||
variables:
|
variables:
|
||||||
DEBIAN_ARCH: "amd64"
|
DEBIAN_ARCH: "amd64"
|
||||||
DISTRIBUTION_TAG: &distribution-tag-x86_64 "${MESA_ROOTFS_TAG}--${MESA_ARTIFACTS_BASE_TAG}--${MESA_TEMPLATES_COMMIT}"
|
DISTRIBUTION_TAG: &distribution-tag-x86_64 "${MESA_ROOTFS_TAG}--${KERNEL_TAG}--${MESA_ARTIFACTS_BASE_TAG}--${MESA_TEMPLATES_COMMIT}"
|
||||||
|
|
||||||
kernel+rootfs_arm64:
|
kernel+rootfs_arm64:
|
||||||
extends:
|
extends:
|
||||||
@@ -380,9 +378,9 @@ kernel+rootfs_arm32:
|
|||||||
# Don't want the .container rules
|
# Don't want the .container rules
|
||||||
- .build-rules
|
- .build-rules
|
||||||
variables:
|
variables:
|
||||||
FDO_DISTRIBUTION_TAG: "${MESA_IMAGE_TAG}--${MESA_ROOTFS_TAG}--${MESA_TEMPLATES_COMMIT}"
|
FDO_DISTRIBUTION_TAG: "${MESA_IMAGE_TAG}--${MESA_ROOTFS_TAG}--${KERNEL_TAG}--${MESA_TEMPLATES_COMMIT}"
|
||||||
ARTIFACTS_PREFIX: "https://${S3_HOST}/mesa-lava"
|
ARTIFACTS_PREFIX: "https://${S3_HOST}/mesa-lava"
|
||||||
ARTIFACTS_SUFFIX: "${MESA_ROOTFS_TAG}--${MESA_ARTIFACTS_TAG}--${MESA_TEMPLATES_COMMIT}"
|
ARTIFACTS_SUFFIX: "${MESA_ROOTFS_TAG}--${KERNEL_TAG}--${MESA_ARTIFACTS_TAG}--${MESA_TEMPLATES_COMMIT}"
|
||||||
MESA_ARTIFACTS_TAG: *debian-arm64_build
|
MESA_ARTIFACTS_TAG: *debian-arm64_build
|
||||||
MESA_ROOTFS_TAG: *kernel-rootfs
|
MESA_ROOTFS_TAG: *kernel-rootfs
|
||||||
|
|
||||||
@@ -407,7 +405,7 @@ debian/arm64_test:
|
|||||||
MESA_ROOTFS_TAG: *kernel-rootfs
|
MESA_ROOTFS_TAG: *kernel-rootfs
|
||||||
|
|
||||||
.use-debian/arm32_test:
|
.use-debian/arm32_test:
|
||||||
image: "$CI_REGISTRY_IMAGE/${MESA_IMAGE_PATH}:${MESA_IMAGE_TAG}--${MESA_ROOTFS_TAG}--${MESA_TEMPLATES_COMMIT}"
|
image: "$CI_REGISTRY_IMAGE/${MESA_IMAGE_PATH}:${MESA_IMAGE_TAG}--${MESA_ROOTFS_TAG}--${KERNEL_TAG}--${MESA_TEMPLATES_COMMIT}"
|
||||||
extends:
|
extends:
|
||||||
- .use-debian/arm_test
|
- .use-debian/arm_test
|
||||||
variables:
|
variables:
|
||||||
@@ -417,7 +415,7 @@ debian/arm64_test:
|
|||||||
- debian/arm_test
|
- debian/arm_test
|
||||||
|
|
||||||
.use-debian/arm64_test:
|
.use-debian/arm64_test:
|
||||||
image: "$CI_REGISTRY_IMAGE/${MESA_IMAGE_PATH}:${MESA_IMAGE_TAG}--${MESA_ROOTFS_TAG}--${MESA_TEMPLATES_COMMIT}"
|
image: "$CI_REGISTRY_IMAGE/${MESA_IMAGE_PATH}:${MESA_IMAGE_TAG}--${MESA_ROOTFS_TAG}--${KERNEL_TAG}--${MESA_TEMPLATES_COMMIT}"
|
||||||
extends:
|
extends:
|
||||||
- .use-debian/arm_test
|
- .use-debian/arm_test
|
||||||
variables:
|
variables:
|
||||||
|
@@ -35,20 +35,20 @@ if [[ "$DEBIAN_ARCH" = "arm64" ]]; then
|
|||||||
KERNEL_ARCH="arm64"
|
KERNEL_ARCH="arm64"
|
||||||
SKQP_ARCH="arm64"
|
SKQP_ARCH="arm64"
|
||||||
DEFCONFIG="arch/arm64/configs/defconfig"
|
DEFCONFIG="arch/arm64/configs/defconfig"
|
||||||
DEVICE_TREES="arch/arm64/boot/dts/rockchip/rk3399-gru-kevin.dtb"
|
DEVICE_TREES="rk3399-gru-kevin.dtb"
|
||||||
DEVICE_TREES+=" arch/arm64/boot/dts/amlogic/meson-g12b-a311d-khadas-vim3.dtb"
|
DEVICE_TREES+=" meson-g12b-a311d-khadas-vim3.dtb"
|
||||||
DEVICE_TREES+=" arch/arm64/boot/dts/amlogic/meson-gxl-s805x-libretech-ac.dtb"
|
DEVICE_TREES+=" meson-gxl-s805x-libretech-ac.dtb"
|
||||||
DEVICE_TREES+=" arch/arm64/boot/dts/amlogic/meson-gxm-khadas-vim2.dtb"
|
DEVICE_TREES+=" meson-gxm-khadas-vim2.dtb"
|
||||||
DEVICE_TREES+=" arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64.dtb"
|
DEVICE_TREES+=" sun50i-h6-pine-h64.dtb"
|
||||||
DEVICE_TREES+=" arch/arm64/boot/dts/freescale/imx8mq-nitrogen.dtb"
|
DEVICE_TREES+=" imx8mq-nitrogen.dtb"
|
||||||
DEVICE_TREES+=" arch/arm64/boot/dts/mediatek/mt8192-asurada-spherion-r0.dtb"
|
DEVICE_TREES+=" mt8192-asurada-spherion-r0.dtb"
|
||||||
DEVICE_TREES+=" arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi-juniper-sku16.dtb"
|
DEVICE_TREES+=" mt8183-kukui-jacuzzi-juniper-sku16.dtb"
|
||||||
DEVICE_TREES+=" arch/arm64/boot/dts/nvidia/tegra210-p3450-0000.dtb"
|
DEVICE_TREES+=" tegra210-p3450-0000.dtb"
|
||||||
DEVICE_TREES+=" arch/arm64/boot/dts/qcom/apq8016-sbc.dtb"
|
DEVICE_TREES+=" apq8016-sbc.dtb"
|
||||||
DEVICE_TREES+=" arch/arm64/boot/dts/qcom/apq8096-db820c.dtb"
|
DEVICE_TREES+=" apq8096-db820c.dtb"
|
||||||
DEVICE_TREES+=" arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-limozeen-nots-r5.dtb"
|
DEVICE_TREES+=" sc7180-trogdor-lazor-limozeen-nots-r5.dtb"
|
||||||
DEVICE_TREES+=" arch/arm64/boot/dts/qcom/sc7180-trogdor-kingoftown-r1.dtb"
|
DEVICE_TREES+=" sc7180-trogdor-kingoftown-r1.dtb"
|
||||||
DEVICE_TREES+=" arch/arm64/boot/dts/qcom/sm8350-hdk.dtb"
|
DEVICE_TREES+=" sm8350-hdk.dtb"
|
||||||
KERNEL_IMAGE_NAME="Image"
|
KERNEL_IMAGE_NAME="Image"
|
||||||
|
|
||||||
elif [[ "$DEBIAN_ARCH" = "armhf" ]]; then
|
elif [[ "$DEBIAN_ARCH" = "armhf" ]]; then
|
||||||
@@ -56,10 +56,10 @@ elif [[ "$DEBIAN_ARCH" = "armhf" ]]; then
|
|||||||
KERNEL_ARCH="arm"
|
KERNEL_ARCH="arm"
|
||||||
SKQP_ARCH="arm"
|
SKQP_ARCH="arm"
|
||||||
DEFCONFIG="arch/arm/configs/multi_v7_defconfig"
|
DEFCONFIG="arch/arm/configs/multi_v7_defconfig"
|
||||||
DEVICE_TREES="arch/arm/boot/dts/rk3288-veyron-jaq.dtb"
|
DEVICE_TREES="rk3288-veyron-jaq.dtb"
|
||||||
DEVICE_TREES+=" arch/arm/boot/dts/sun8i-h3-libretech-all-h3-cc.dtb"
|
DEVICE_TREES+=" sun8i-h3-libretech-all-h3-cc.dtb"
|
||||||
DEVICE_TREES+=" arch/arm/boot/dts/imx6q-cubox-i.dtb"
|
DEVICE_TREES+=" imx6q-cubox-i.dtb"
|
||||||
DEVICE_TREES+=" arch/arm/boot/dts/tegra124-jetson-tk1.dtb"
|
DEVICE_TREES+=" tegra124-jetson-tk1.dtb"
|
||||||
KERNEL_IMAGE_NAME="zImage"
|
KERNEL_IMAGE_NAME="zImage"
|
||||||
. .gitlab-ci/container/create-cross-file.sh armhf
|
. .gitlab-ci/container/create-cross-file.sh armhf
|
||||||
else
|
else
|
||||||
@@ -324,25 +324,16 @@ if [ "${DEBIAN_ARCH}" = "arm64" ]; then
|
|||||||
KERNEL_IMAGE_NAME+=" Image.gz"
|
KERNEL_IMAGE_NAME+=" Image.gz"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
ROOTFSTAR="lava-rootfs.tar.zst"
|
||||||
du -ah "$ROOTFS" | sort -h | tail -100
|
du -ah "$ROOTFS" | sort -h | tail -100
|
||||||
pushd $ROOTFS
|
pushd $ROOTFS
|
||||||
tar --zstd -cf /lava-files/lava-rootfs.tar.zst .
|
tar --zstd -cf /lava-files/${ROOTFSTAR} .
|
||||||
popd
|
popd
|
||||||
|
|
||||||
. .gitlab-ci/container/container_post_build.sh
|
. .gitlab-ci/container/container_post_build.sh
|
||||||
|
|
||||||
############### Upload the files!
|
ci-fairy s3cp --token-file "${CI_JOB_JWT_FILE}" /lava-files/"${ROOTFSTAR}" \
|
||||||
FILES_TO_UPLOAD="lava-rootfs.tar.zst \
|
https://${S3_PATH}/"${ROOTFSTAR}"
|
||||||
$KERNEL_IMAGE_NAME"
|
|
||||||
|
|
||||||
if [[ -n $DEVICE_TREES ]]; then
|
|
||||||
FILES_TO_UPLOAD="$FILES_TO_UPLOAD $(basename -a $DEVICE_TREES)"
|
|
||||||
fi
|
|
||||||
|
|
||||||
for f in $FILES_TO_UPLOAD; do
|
|
||||||
ci-fairy s3cp --token-file "${CI_JOB_JWT_FILE}" /lava-files/$f \
|
|
||||||
https://${S3_PATH}/$f
|
|
||||||
done
|
|
||||||
|
|
||||||
touch /lava-files/done
|
touch /lava-files/done
|
||||||
ci-fairy s3cp --token-file "${CI_JOB_JWT_FILE}" /lava-files/done https://${S3_PATH}/done
|
ci-fairy s3cp --token-file "${CI_JOB_JWT_FILE}" /lava-files/done https://${S3_PATH}/done
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
variables:
|
variables:
|
||||||
DEBIAN_X86_64_BUILD_BASE_IMAGE: "debian/x86_64_build-base"
|
DEBIAN_X86_64_BUILD_BASE_IMAGE: "debian/x86_64_build-base"
|
||||||
DEBIAN_BASE_TAG: "2023-07-10-virglrenderer"
|
DEBIAN_BASE_TAG: "2023-07-11-dekernelize"
|
||||||
|
|
||||||
DEBIAN_X86_64_BUILD_IMAGE_PATH: "debian/x86_64_build"
|
DEBIAN_X86_64_BUILD_IMAGE_PATH: "debian/x86_64_build"
|
||||||
DEBIAN_BUILD_TAG: "2023-06-24-agility-711"
|
DEBIAN_BUILD_TAG: "2023-06-24-agility-711"
|
||||||
@@ -21,7 +21,8 @@ variables:
|
|||||||
ALPINE_X86_64_BUILD_TAG: "2023-05-01-3.18-bump-1"
|
ALPINE_X86_64_BUILD_TAG: "2023-05-01-3.18-bump-1"
|
||||||
ALPINE_X86_64_LAVA_SSH_TAG: "2023-06-26-first-version"
|
ALPINE_X86_64_LAVA_SSH_TAG: "2023-06-26-first-version"
|
||||||
FEDORA_X86_64_BUILD_TAG: "2023-05-05-ccache-on"
|
FEDORA_X86_64_BUILD_TAG: "2023-05-05-ccache-on"
|
||||||
KERNEL_ROOTFS_TAG: "2023-07-10-virglrenderer"
|
KERNEL_ROOTFS_TAG: "2023-07-11-dekernelize"
|
||||||
|
KERNEL_TAG: "v6.3-rc6-for-mesa-ci-a8016765452e"
|
||||||
|
|
||||||
WINDOWS_X64_VS_PATH: "windows/x64_vs"
|
WINDOWS_X64_VS_PATH: "windows/x64_vs"
|
||||||
WINDOWS_X64_VS_TAG: "2022-10-20-upgrade-zlib"
|
WINDOWS_X64_VS_TAG: "2022-10-20-upgrade-zlib"
|
||||||
|
@@ -25,8 +25,7 @@ cp "$SCRIPTS_DIR"/setup-test-env.sh results/job-rootfs-overlay/
|
|||||||
|
|
||||||
# Prepare env vars for upload.
|
# Prepare env vars for upload.
|
||||||
section_start variables "Variables passed through:"
|
section_start variables "Variables passed through:"
|
||||||
KERNEL_IMAGE_BASE_URL="https://${BASE_SYSTEM_HOST_PATH}" \
|
artifacts/ci-common/generate-env.sh | tee results/job-rootfs-overlay/set-job-env-vars.sh
|
||||||
artifacts/ci-common/generate-env.sh | tee results/job-rootfs-overlay/set-job-env-vars.sh
|
|
||||||
section_end variables
|
section_end variables
|
||||||
|
|
||||||
tar zcf job-rootfs-overlay.tar.gz -C results/job-rootfs-overlay/ .
|
tar zcf job-rootfs-overlay.tar.gz -C results/job-rootfs-overlay/ .
|
||||||
@@ -41,7 +40,7 @@ PYTHONPATH=artifacts/ artifacts/lava/lava_job_submitter.py \
|
|||||||
--dump-yaml \
|
--dump-yaml \
|
||||||
--pipeline-info "$CI_JOB_NAME: $CI_PIPELINE_URL on $CI_COMMIT_REF_NAME ${CI_NODE_INDEX}/${CI_NODE_TOTAL}" \
|
--pipeline-info "$CI_JOB_NAME: $CI_PIPELINE_URL on $CI_COMMIT_REF_NAME ${CI_NODE_INDEX}/${CI_NODE_TOTAL}" \
|
||||||
--rootfs-url-prefix "https://${BASE_SYSTEM_HOST_PATH}" \
|
--rootfs-url-prefix "https://${BASE_SYSTEM_HOST_PATH}" \
|
||||||
--kernel-url-prefix "https://${BASE_SYSTEM_HOST_PATH}" \
|
--kernel-url-prefix "${KERNEL_IMAGE_BASE}/${DEBIAN_ARCH}" \
|
||||||
--build-url "${ARTIFACT_URL}" \
|
--build-url "${ARTIFACT_URL}" \
|
||||||
--job-rootfs-overlay-url "${FDO_HTTP_CACHE_URI:-}https://${JOB_ROOTFS_OVERLAY_PATH}" \
|
--job-rootfs-overlay-url "${FDO_HTTP_CACHE_URI:-}https://${JOB_ROOTFS_OVERLAY_PATH}" \
|
||||||
--job-timeout-min ${JOB_TIMEOUT:-30} \
|
--job-timeout-min ${JOB_TIMEOUT:-30} \
|
||||||
|
@@ -56,6 +56,8 @@ clang-format:
|
|||||||
- debian/x86_64_test-gl
|
- debian/x86_64_test-gl
|
||||||
- debian-testing
|
- debian-testing
|
||||||
- !reference [.required-for-hardware-jobs, needs]
|
- !reference [.required-for-hardware-jobs, needs]
|
||||||
|
variables:
|
||||||
|
DEBIAN_ARCH: amd64
|
||||||
|
|
||||||
.test-vk:
|
.test-vk:
|
||||||
extends:
|
extends:
|
||||||
@@ -65,6 +67,8 @@ clang-format:
|
|||||||
- debian-testing
|
- debian-testing
|
||||||
- debian/x86_64_test-vk
|
- debian/x86_64_test-vk
|
||||||
- !reference [.required-for-hardware-jobs, needs]
|
- !reference [.required-for-hardware-jobs, needs]
|
||||||
|
variables:
|
||||||
|
DEBIAN_ARCH: amd64
|
||||||
|
|
||||||
.test-cl:
|
.test-cl:
|
||||||
extends:
|
extends:
|
||||||
@@ -177,6 +181,8 @@ clang-format:
|
|||||||
- rm -rf install
|
- rm -rf install
|
||||||
- (set -x; curl -L --retry 4 -f --retry-all-errors --retry-delay 60 ${FDO_HTTP_CACHE_URI:-}https://${PIPELINE_ARTIFACTS_BASE}/${S3_ARTIFACT_NAME}.tar.zst | tar --zstd -x)
|
- (set -x; curl -L --retry 4 -f --retry-all-errors --retry-delay 60 ${FDO_HTTP_CACHE_URI:-}https://${PIPELINE_ARTIFACTS_BASE}/${S3_ARTIFACT_NAME}.tar.zst | tar --zstd -x)
|
||||||
- section_end artifacts_download
|
- section_end artifacts_download
|
||||||
|
variables:
|
||||||
|
BM_ROOTFS: /rootfs-${DEBIAN_ARCH}
|
||||||
artifacts:
|
artifacts:
|
||||||
when: always
|
when: always
|
||||||
name: "mesa_${CI_JOB_NAME}"
|
name: "mesa_${CI_JOB_NAME}"
|
||||||
@@ -194,7 +200,7 @@ clang-format:
|
|||||||
- .baremetal-test
|
- .baremetal-test
|
||||||
- .use-debian/arm32_test
|
- .use-debian/arm32_test
|
||||||
variables:
|
variables:
|
||||||
BM_ROOTFS: /rootfs-armhf
|
DEBIAN_ARCH: armhf
|
||||||
S3_ARTIFACT_NAME: mesa-arm32-default-debugoptimized
|
S3_ARTIFACT_NAME: mesa-arm32-default-debugoptimized
|
||||||
needs:
|
needs:
|
||||||
- debian/arm32_test
|
- debian/arm32_test
|
||||||
@@ -208,7 +214,7 @@ clang-format:
|
|||||||
- .baremetal-test
|
- .baremetal-test
|
||||||
- .use-debian/arm64_test
|
- .use-debian/arm64_test
|
||||||
variables:
|
variables:
|
||||||
BM_ROOTFS: /rootfs-arm64
|
DEBIAN_ARCH: arm64
|
||||||
S3_ARTIFACT_NAME: mesa-arm64-default-debugoptimized
|
S3_ARTIFACT_NAME: mesa-arm64-default-debugoptimized
|
||||||
needs:
|
needs:
|
||||||
- debian/arm64_test
|
- debian/arm64_test
|
||||||
|
@@ -18,7 +18,7 @@ Linux mainline, that is why Mesa has its own kernel version which should be used
|
|||||||
as the base for newer kernels.
|
as the base for newer kernels.
|
||||||
|
|
||||||
So, one should base the kernel uprev from the last tag used in the Mesa CI,
|
So, one should base the kernel uprev from the last tag used in the Mesa CI,
|
||||||
please refer to ``.gitlab-ci/container/gitlab-ci.yml`` ``KERNEL_URL`` variable.
|
please refer to ``.gitlab-ci/image-tags.yml`` ``KERNEL_TAG`` variable.
|
||||||
Every tag has a standard naming: ``vX.YZ-for-mesa-ci-<commit_short_SHA>``, which
|
Every tag has a standard naming: ``vX.YZ-for-mesa-ci-<commit_short_SHA>``, which
|
||||||
can be created via the command:
|
can be created via the command:
|
||||||
|
|
||||||
@@ -27,8 +27,7 @@ can be created via the command:
|
|||||||
Building Kernel
|
Building Kernel
|
||||||
---------------
|
---------------
|
||||||
|
|
||||||
When Mesa CI generates a new rootfs image, the Linux Kernel is built based on
|
The kernel files are loaded from the artifacts uploaded to S3 from gfx-ci/linux.
|
||||||
the script located at ``.gitlab-ci/container/build-kernel.sh``.
|
|
||||||
|
|
||||||
Updating Kconfigs
|
Updating Kconfigs
|
||||||
^^^^^^^^^^^^^^^^^
|
^^^^^^^^^^^^^^^^^
|
||||||
@@ -41,15 +40,15 @@ defconfig* made via ``merge_config.sh`` script located at Linux Kernel tree.
|
|||||||
Kconfigs location
|
Kconfigs location
|
||||||
"""""""""""""""""
|
"""""""""""""""""
|
||||||
|
|
||||||
+------------+--------------------------------------------+-------------------------------------+
|
+------------+-----------------------------------------------------+-------------------------------------+
|
||||||
| Platform | Mesa CI Kconfig location | Linux tree defconfig |
|
| Platform | Mesa CI Kconfig location | Linux tree defconfig |
|
||||||
+============+============================================+=====================================+
|
+============+=====================================================+=====================================+
|
||||||
| arm | .gitlab-ci/container/arm.config | arch/arm/configs/multi_v7_defconfig |
|
| arm | kernel/configs/mesa3d-ci_arm.config@gfx-ci/linux | arch/arm/configs/multi_v7_defconfig |
|
||||||
+------------+--------------------------------------------+-------------------------------------+
|
+------------+-----------------------------------------------------+-------------------------------------+
|
||||||
| arm64 | .gitlab-ci/container/arm64.config | arch/arm64/configs/defconfig |
|
| arm64 | kernel/configs/mesa3d-ci_arm64.config@gfx-ci/linux | arch/arm64/configs/defconfig |
|
||||||
+------------+--------------------------------------------+-------------------------------------+
|
+------------+-----------------------------------------------------+-------------------------------------+
|
||||||
| x86-64 | .gitlab-ci/container/x86_64.config | arch/x86/configs/x86_64_defconfig |
|
| x86-64 | kernel/configs/mesa3d-ci_x86_64.config@gfx-ci/linux | arch/x86/configs/x86_64_defconfig |
|
||||||
+------------+--------------------------------------------+-------------------------------------+
|
+------------+-----------------------------------------------------+-------------------------------------+
|
||||||
|
|
||||||
Updating image tags
|
Updating image tags
|
||||||
-------------------
|
-------------------
|
||||||
|
Reference in New Issue
Block a user