17ec681f3Smrg#!/bin/sh 27ec681f3Smrg 37ec681f3Smrgset -ex 47ec681f3Smrg 57ec681f3Smrgif [ -z "$GPU_VERSION" ]; then 67ec681f3Smrg echo 'GPU_VERSION must be set to something like "llvmpipe" or "freedreno-a630" (the name used in your ci/gpu-version-*.txt)' 77ec681f3Smrg exit 1 87ec681f3Smrgfi 97ec681f3Smrg 107ec681f3SmrgINSTALL=`pwd`/install 117ec681f3Smrg 127ec681f3Smrg# Set up the driver environment. 137ec681f3Smrgexport LD_LIBRARY_PATH=`pwd`/install/lib/ 147ec681f3Smrgexport EGL_PLATFORM=surfaceless 157ec681f3Smrgexport VK_ICD_FILENAMES=`pwd`/install/share/vulkan/icd.d/"$VK_DRIVER"_icd.${VK_CPU:-`uname -m`}.json 167ec681f3Smrg 177ec681f3SmrgRESULTS=`pwd`/${PIGLIT_RESULTS_DIR:-results} 187ec681f3Smrgmkdir -p $RESULTS 197ec681f3Smrg 207ec681f3Smrgif [ -n "$PIGLIT_FRACTION" -o -n "$CI_NODE_INDEX" ]; then 217ec681f3Smrg FRACTION=`expr ${PIGLIT_FRACTION:-1} \* ${CI_NODE_TOTAL:-1}` 227ec681f3SmrgPIGLIT_RUNNER_OPTIONS="$PIGLIT_RUNNER_OPTIONS --fraction $FRACTION" 237ec681f3Smrgfi 247ec681f3Smrg 257ec681f3Smrg# If the job is parallel at the gitab job level, take the corresponding fraction 267ec681f3Smrg# of the caselist. 277ec681f3Smrgif [ -n "$CI_NODE_INDEX" ]; then 287ec681f3Smrg PIGLIT_RUNNER_OPTIONS="$PIGLIT_RUNNER_OPTIONS --fraction-start ${CI_NODE_INDEX}" 297ec681f3Smrgfi 307ec681f3Smrg 317ec681f3Smrgif [ -e "$INSTALL/$GPU_VERSION-fails.txt" ]; then 327ec681f3Smrg PIGLIT_RUNNER_OPTIONS="$PIGLIT_RUNNER_OPTIONS --baseline $INSTALL/$GPU_VERSION-fails.txt" 337ec681f3Smrgfi 347ec681f3Smrg 357ec681f3Smrg# Default to an empty known flakes file if it doesn't exist. 367ec681f3Smrgtouch $INSTALL/$GPU_VERSION-flakes.txt 377ec681f3Smrg 387ec681f3Smrgif [ -n "$VK_DRIVER" ] && [ -e "$INSTALL/$VK_DRIVER-skips.txt" ]; then 397ec681f3Smrg PIGLIT_SKIPS="$PIGLIT_SKIPS $INSTALL/$VK_DRIVER-skips.txt" 407ec681f3Smrgfi 417ec681f3Smrg 427ec681f3Smrgif [ -n "$GALLIUM_DRIVER" ] && [ -e "$INSTALL/$GALLIUM_DRIVER-skips.txt" ]; then 437ec681f3Smrg PIGLIT_SKIPS="$PIGLIT_SKIPS $INSTALL/$GALLIUM_DRIVER-skips.txt" 447ec681f3Smrgfi 457ec681f3Smrg 467ec681f3Smrgif [ -n "$DRIVER_NAME" ] && [ -e "$INSTALL/$DRIVER_NAME-skips.txt" ]; then 477ec681f3Smrg PIGLIT_SKIPS="$PIGLIT_SKIPS $INSTALL/$DRIVER_NAME-skips.txt" 487ec681f3Smrgfi 497ec681f3Smrg 507ec681f3Smrgif [ -e "$INSTALL/$GPU_VERSION-skips.txt" ]; then 517ec681f3Smrg PIGLIT_SKIPS="$PIGLIT_SKIPS $INSTALL/$GPU_VERSION-skips.txt" 527ec681f3Smrgfi 537ec681f3Smrg 547ec681f3Smrgset +e 557ec681f3Smrg 567ec681f3Smrgpiglit-runner \ 577ec681f3Smrg run \ 587ec681f3Smrg --piglit-folder /piglit \ 597ec681f3Smrg --output $RESULTS \ 607ec681f3Smrg --jobs ${FDO_CI_CONCURRENT:-4} \ 617ec681f3Smrg --skips $INSTALL/all-skips.txt $PIGLIT_SKIPS \ 627ec681f3Smrg --flakes $INSTALL/$GPU_VERSION-flakes.txt \ 637ec681f3Smrg --profile $PIGLIT_PROFILES \ 647ec681f3Smrg --process-isolation \ 657ec681f3Smrg $PIGLIT_RUNNER_OPTIONS \ 667ec681f3Smrg -v -v 677ec681f3Smrg 687ec681f3SmrgPIGLIT_EXITCODE=$? 697ec681f3Smrg 707ec681f3Smrgdeqp-runner junit \ 717ec681f3Smrg --testsuite $PIGLIT_PROFILES \ 727ec681f3Smrg --results $RESULTS/failures.csv \ 737ec681f3Smrg --output $RESULTS/junit.xml \ 747ec681f3Smrg --limit 50 \ 757ec681f3Smrg --template "See https://$CI_PROJECT_ROOT_NAMESPACE.pages.freedesktop.org/-/$CI_PROJECT_NAME/-/jobs/$CI_JOB_ID/artifacts/results/{{testcase}}.xml" 767ec681f3Smrg 777ec681f3Smrg# Report the flakes to the IRC channel for monitoring (if configured): 787ec681f3Smrgif [ -n "$FLAKES_CHANNEL" ]; then 797ec681f3Smrg python3 $INSTALL/report-flakes.py \ 807ec681f3Smrg --host irc.oftc.net \ 817ec681f3Smrg --port 6667 \ 827ec681f3Smrg --results $RESULTS/results.csv \ 837ec681f3Smrg --known-flakes $INSTALL/$GPU_VERSION-flakes.txt \ 847ec681f3Smrg --channel "$FLAKES_CHANNEL" \ 857ec681f3Smrg --runner "$CI_RUNNER_DESCRIPTION" \ 867ec681f3Smrg --job "$CI_JOB_ID" \ 877ec681f3Smrg --url "$CI_JOB_URL" \ 887ec681f3Smrg --branch "${CI_MERGE_REQUEST_SOURCE_BRANCH_NAME:-$CI_COMMIT_BRANCH}" \ 897ec681f3Smrg --branch-title "${CI_MERGE_REQUEST_TITLE:-$CI_COMMIT_TITLE}" 907ec681f3Smrgfi 917ec681f3Smrg 927ec681f3Smrgexit $PIGLIT_EXITCODE 93