brintos

brintos / linux-shallow public Read only

0
0
Text · 2.3 KiB · eddb5f7 Raw
75 lines · bash
1#!/bin/bash2# SPDX-License-Identifier: MIT3 4set -ex5 6function generate_testlist {7    set +x8    while read -r line; do9        if [ "$line" = "TESTLIST" ] || [ "$line" = "END TESTLIST" ]; then10            continue11        fi12 13        tests=$(echo "$line" | tr ' ' '\n')14 15        for test in $tests; do16            output=$(/igt/libexec/igt-gpu-tools/"$test" --list-subtests || true)17 18            if [ -z "$output" ]; then19                echo "$test"20            else21                echo "$output" | while read -r subtest; do22                    echo "$test@$subtest"23                done24            fi25        done26    done < /igt/libexec/igt-gpu-tools/test-list.txt > /igt/libexec/igt-gpu-tools/ci-testlist.txt27    set -x28}29 30git clone https://gitlab.freedesktop.org/drm/igt-gpu-tools.git --single-branch --no-checkout31cd igt-gpu-tools32git checkout $IGT_VERSION33 34if [[ "$KERNEL_ARCH" = "arm" ]]; then35    . ../.gitlab-ci/container/create-cross-file.sh armhf36    EXTRA_MESON_ARGS="--cross-file /cross_file-armhf.txt"37fi38 39MESON_OPTIONS="-Doverlay=disabled                    \40               -Dchamelium=disabled                  \41               -Dvalgrind=disabled                   \42               -Dman=enabled                         \43               -Dtests=enabled                       \44               -Drunner=enabled                      \45               -Dlibunwind=enabled                   \46               -Dprefix=/igt"47 48if [[ "$KERNEL_ARCH" = "arm64" ]] || [[ "$KERNEL_ARCH" = "arm" ]]; then49    MESON_OPTIONS="$MESON_OPTIONS -Dxe_driver=disabled"50fi51 52mkdir -p /igt53meson build $MESON_OPTIONS $EXTRA_MESON_ARGS54ninja -C build -j${FDO_CI_CONCURRENT:-4} || ninja -C build -j 155ninja -C build install56 57if [[ "$KERNEL_ARCH" = "arm64" ]]; then58    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/igt/lib/aarch64-linux-gnu59elif [[ "$KERNEL_ARCH" = "arm" ]]; then60    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/igt/lib61else62    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/igt/lib6463fi64 65echo "Generating ci-testlist.txt"66generate_testlist67 68mkdir -p artifacts/69tar -cf artifacts/igt.tar /igt70 71# Pass needed files to the test stage72S3_ARTIFACT_NAME="igt.tar.gz"73gzip -c artifacts/igt.tar > ${S3_ARTIFACT_NAME}74ci-fairy s3cp --token-file "${S3_JWT_FILE}" ${S3_ARTIFACT_NAME} https://${PIPELINE_ARTIFACTS_BASE}/${KERNEL_ARCH}/${S3_ARTIFACT_NAME}75