• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#!/usr/bin/env bash
2# shellcheck disable=SC2086 # we want word splitting
3# shellcheck disable=SC1091 # paths only become valid at runtime
4
5. "${SCRIPTS_DIR}/setup-test-env.sh"
6
7set -ex
8
9INSTALL=$PWD/install
10
11# Set up the driver environment.
12export LD_LIBRARY_PATH=$INSTALL/lib/
13
14export LIBVA_DRIVERS_PATH=$INSTALL/lib/dri/
15# libva spams driver open info by default, and that happens per testcase.
16export LIBVA_MESSAGING_LEVEL=1
17
18if [ -e "$INSTALL/$GPU_VERSION-fails.txt" ]; then
19    GTEST_RUNNER_OPTIONS="$GTEST_RUNNER_OPTIONS --baseline $INSTALL/$GPU_VERSION-fails.txt"
20fi
21
22# Default to an empty known flakes file if it doesn't exist.
23touch "$INSTALL/$GPU_VERSION-flakes.txt"
24
25if [ -n "$GALLIUM_DRIVER" ] && [ -e "$INSTALL/$GALLIUM_DRIVER-skips.txt" ]; then
26    GTEST_SKIPS="$GTEST_SKIPS --skips $INSTALL/$GALLIUM_DRIVER-skips.txt"
27fi
28
29if [ -n "$DRIVER_NAME" ] && [ -e "$INSTALL/$DRIVER_NAME-skips.txt" ]; then
30    GTEST_SKIPS="$GTEST_SKIPS --skips $INSTALL/$DRIVER_NAME-skips.txt"
31fi
32
33if [ -e "$INSTALL/$GPU_VERSION-skips.txt" ]; then
34    GTEST_SKIPS="$GTEST_SKIPS --skips $INSTALL/$GPU_VERSION-skips.txt"
35fi
36
37set +e
38
39gtest-runner \
40    run \
41    --gtest $GTEST \
42    --output ${RESULTS_DIR} \
43    --jobs ${FDO_CI_CONCURRENT:-4} \
44    $GTEST_SKIPS \
45    --flakes $INSTALL/$GPU_VERSION-flakes.txt \
46    --fraction-start ${CI_NODE_INDEX:-1} \
47    --fraction $((${CI_NODE_TOTAL:-1} * ${GTEST_FRACTION:-1})) \
48    --env "LD_PRELOAD=$TEST_LD_PRELOAD" \
49    $GTEST_RUNNER_OPTIONS
50
51GTEST_EXITCODE=$?
52
53deqp-runner junit \
54   --testsuite gtest \
55   --results $RESULTS_DIR/failures.csv \
56   --output $RESULTS_DIR/junit.xml \
57   --limit 50 \
58   --template "See $ARTIFACTS_BASE_URL/results/{{testcase}}.xml"
59
60# Report the flakes to the IRC channel for monitoring (if configured):
61if [ -n "$FLAKES_CHANNEL" ]; then
62  python3 $INSTALL/report-flakes.py \
63         --host irc.oftc.net \
64         --port 6667 \
65         --results $RESULTS_DIR/results.csv \
66         --known-flakes $INSTALL/$GPU_VERSION-flakes.txt \
67         --channel "$FLAKES_CHANNEL" \
68         --runner "$CI_RUNNER_DESCRIPTION" \
69         --job "$CI_JOB_ID" \
70         --url "$CI_JOB_URL" \
71         --branch "${CI_MERGE_REQUEST_SOURCE_BRANCH_NAME:-$CI_COMMIT_BRANCH}" \
72         --branch-title "${CI_MERGE_REQUEST_TITLE:-$CI_COMMIT_TITLE}" || true
73fi
74
75exit $GTEST_EXITCODE
76