ci/piglit: allow parallel piglit jobs
authorJuan A. Suarez Romero <jasuarez@igalia.com>
Fri, 12 Feb 2021 17:20:00 +0000 (18:20 +0100)
committerJuan A. Suarez Romero <jasuarez@igalia.com>
Wed, 24 Feb 2021 08:41:33 +0000 (09:41 +0100)
commite814e23f59a80a1ee092d5cf94cc0ea98235d7db
treea8ff62c2c5e799d720d61600f460251cf5934757
parentb17ec53c814d8effa0234ce3aa41fd4f2bb3765c
ci/piglit: allow parallel piglit jobs

This allows to split a piglit job in several parallel jobs, to speed up
the execution.

Due piglit restrictions, this only works for single profiles. Otherwise
an error will be shown in the runner.

Also, a new gitlab job variable `PIGLIT_TESTS` is introduced that
contains the excluded/included tests with `-x` or `-n`. The rest of the
piglit options go to `PIGLIT_OPTIONS` (like `--timeout n`).

v2 (Andres):
 - Replay profile is supported in parallel jobs.
 - Bail out inmediately if parallel jobs is tried with multiple
profiles.
 - Use testlist only when doing parallel jobs.
 - Do not drop pass tests when filtering executed tests.
 - Get rid of PIGLIT_FRACTION.

v4:
 - uncommit unrelated change (Andres).

Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Reviewed-by: Andres Gomez <agomez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9022>
.gitlab-ci.yml
.gitlab-ci/bare-metal/rootfs-setup.sh
.gitlab-ci/piglit/run.sh
.gitlab-ci/piglit/run_cl.sh
.gitlab-ci/windows/piglit_run.ps1
src/broadcom/ci/gitlab-ci.yml
src/freedreno/ci/gitlab-ci.yml
src/gallium/drivers/llvmpipe/ci/gitlab-ci.yml
src/gallium/drivers/softpipe/ci/gitlab-ci.yml
src/gallium/drivers/zink/ci/gitlab-ci.yml