diff --git a/.gitlab-ci/container/build-deqp-runner.sh b/.gitlab-ci/container/build-deqp-runner.sh index 9c726448c48..7919f0c74d0 100644 --- a/.gitlab-ci/container/build-deqp-runner.sh +++ b/.gitlab-ci/container/build-deqp-runner.sh @@ -1,9 +1,22 @@ -#!/bin/bash +#!/bin/sh set -ex -cargo install --locked deqp-runner \ - -j ${FDO_CI_CONCURRENT:-4} \ - --version 0.11.0 \ - --root /usr/local \ - $EXTRA_CARGO_ARGS +if [ -n "${DEQP_RUNNER_GIT_TAG}${DEQP_RUNNER_GIT_REV}" ]; then + # Build and install from source + EXTRA_CARGO_ARGS="--git ${DEQP_RUNNER_GIT_URL:-https://gitlab.freedesktop.org/anholt/deqp-runner.git} ${EXTRA_CARGO_ARGS}" + + if [ -n "${DEQP_RUNNER_GIT_TAG}" ]; then + EXTRA_CARGO_ARGS="--tag ${DEQP_RUNNER_GIT_TAG} ${EXTRA_CARGO_ARGS}" + else + EXTRA_CARGO_ARGS="--rev ${DEQP_RUNNER_GIT_REV} ${EXTRA_CARGO_ARGS}" + fi +else + # Install from package registry + EXTRA_CARGO_ARGS="--version 0.11.0 ${EXTRA_CARGO_ARGS} -- deqp-runner" +fi + +cargo install --locked \ + -j ${FDO_CI_CONCURRENT:-4} \ + --root /usr/local \ + ${EXTRA_CARGO_ARGS}