Mesa (master): ci/lava: Return the run's results/ artifacts from the DUTs.
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Mon Apr 19 17:10:39 UTC 2021
Module: Mesa
Branch: master
Commit: 7f9f3455798779fbb61ee67d6ce99da300e3da76
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=7f9f3455798779fbb61ee67d6ce99da300e3da76
Author: Eric Anholt <eric at anholt.net>
Date: Fri Apr 16 14:18:07 2021 -0700
ci/lava: Return the run's results/ artifacts from the DUTs.
Finally LAVA users will be able to see deqp XMLs on failures from the
job's artifacts browser. This replaces a couple of one-off minio uploads
in the piglit runner.
Reviewed-by: Tomeu Vizoso <tomeu.vizoso at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10297>
---
.gitlab-ci/bare-metal/rootfs-setup.sh | 1 -
.gitlab-ci/lava-gitlab-ci.yml | 18 ++++++++++--------
.gitlab-ci/lava.yml.jinja2 | 13 +++++++++++--
.gitlab-ci/piglit/run.sh | 6 ------
4 files changed, 21 insertions(+), 17 deletions(-)
diff --git a/.gitlab-ci/bare-metal/rootfs-setup.sh b/.gitlab-ci/bare-metal/rootfs-setup.sh
index 281cee21203..38f0b2a60bb 100644
--- a/.gitlab-ci/bare-metal/rootfs-setup.sh
+++ b/.gitlab-ci/bare-metal/rootfs-setup.sh
@@ -60,7 +60,6 @@ for var in \
MINIO_HOST \
NIR_VALIDATE \
PIGLIT_FRACTION \
- PIGLIT_HTML_SUMMARY \
PIGLIT_JUNIT_RESULTS \
PIGLIT_OPTIONS \
PIGLIT_PLATFORM \
diff --git a/.gitlab-ci/lava-gitlab-ci.yml b/.gitlab-ci/lava-gitlab-ci.yml
index d4c77cf4609..0a384d74da4 100644
--- a/.gitlab-ci/lava-gitlab-ci.yml
+++ b/.gitlab-ci/lava-gitlab-ci.yml
@@ -64,6 +64,8 @@ kernel+rootfs_armhf:
else
ARTIFACTS_URL="${ARTIFACTS_PREFIX}/${CI_PROJECT_PATH}/lava/${DISTRIBUTION_TAG}/${ARCH}"
fi
+ - rm -rf results
+ - mkdir -p results
- >
artifacts/generate_lava.py \
--template artifacts/lava.yml.jinja2 \
@@ -83,9 +85,8 @@ kernel+rootfs_armhf:
--ci-node-total "${CI_NODE_TOTAL}"
- lava_job_id=`lavacli jobs submit lava.yml` || lavacli jobs submit lava.yml
- echo $lava_job_id
- - rm -rf artifacts/*
- - cp lava.yml artifacts/.
- - lavacli jobs logs $lava_job_id | tee artifacts/lava-$lava_job_id.log
+ - cp lava.yml results/.
+ - lavacli jobs logs $lava_job_id | tee results/lava-$lava_job_id.log
- lavacli jobs show $lava_job_id
- result=`lavacli results $lava_job_id 0_mesa mesa | head -1`
- echo $result
@@ -94,7 +95,11 @@ kernel+rootfs_armhf:
name: "mesa_${CI_JOB_NAME}"
when: always
paths:
- - artifacts/
+ - results/
+ exclude:
+ - results/*.shader_cache
+ after_script:
+ - wget -q "https://minio-packet.freedesktop.org/artifacts/${CI_PROJECT_PATH}/${CI_PIPELINE_ID}/${CI_JOB_ID}/results.tar.gz" -O- | tar -xz
.lava-test:armhf:
variables:
@@ -147,12 +152,9 @@ kernel+rootfs_armhf:
- meson-testing
.lava-traces-base:
- after_script:
- - mkdir -p artifacts
- - wget -O "artifacts/junit.xml" "https://minio-packet.freedesktop.org/artifacts/${CI_PROJECT_PATH}/${CI_PIPELINE_ID}/${CI_JOB_ID}/traces/junit.xml"
artifacts:
reports:
- junit: artifacts/junit.xml
+ junit: results/junit.xml
.lava-piglit:
variables:
diff --git a/.gitlab-ci/lava.yml.jinja2 b/.gitlab-ci/lava.yml.jinja2
index a36c1392447..9ccf46f8f7f 100644
--- a/.gitlab-ci/lava.yml.jinja2
+++ b/.gitlab-ci/lava.yml.jinja2
@@ -102,6 +102,7 @@ actions:
- export PIGLIT_REPLAY_EXTRA_ARGS="--keep-image"
- export PIGLIT_REPLAY_REFERENCE_IMAGES_BASE_URL="/mesa-tracie-results/${CI_PROJECT_PATH}"
- export PIGLIT_REPLAY_ARTIFACTS_BASE_URL="/artifacts/${CI_PROJECT_PATH}/${CI_PIPELINE_ID}/${CI_JOB_ID}"
+ - export MINIO_ARTIFACTS_PATH="minio://${MINIO_HOST}/${PIGLIT_REPLAY_ARTIFACTS_BASE_URL}/"
- export PIGLIT_REPLAY_DESCRIPTION_FILE="/install/traces-${DRIVER_NAME}.yml"
- export PIGLIT_REPLAY_DEVICE_NAME=gl-{{ gpu_version }}
- export PIGLIT_RESULTS={{ gpu_version }}-${PIGLIT_PROFILES}
@@ -109,10 +110,18 @@ actions:
- export LIBGL_DRIVERS_PATH=`pwd`/install/lib/dri
- "if sh $LAVA_TEST_SCRIPT; then
- echo 'mesa: pass';
+ export RESULT=pass;
else
- echo 'mesa: fail';
+ export RESULT=fail;
fi"
+
+ - "if [ -d results ]; then
+ tar -czf results.tar.gz results/;
+ ci-fairy minio login $CI_JOB_JWT;
+ ci-fairy minio cp results.tar.gz $MINIO_ARTIFACTS_PATH/results.tar.gz;
+ fi"
+
+ - "echo mesa: $RESULT"
parse:
pattern: '(?P<test_case_id>\S*):\s+(?P<result>(pass|fail))'
from: inline
diff --git a/.gitlab-ci/piglit/run.sh b/.gitlab-ci/piglit/run.sh
index 116f363d07d..ebe22c3eb13 100755
--- a/.gitlab-ci/piglit/run.sh
+++ b/.gitlab-ci/piglit/run.sh
@@ -233,13 +233,7 @@ if [ "x$PIGLIT_PROFILES" = "xreplay" ] \
__MINIO_PATH="$PIGLIT_REPLAY_ARTIFACTS_BASE_URL"
__MINIO_TRACES_PREFIX="traces"
- ci-fairy minio cp "$RESULTS"/results.json.bz2 \
- "minio://${MINIO_HOST}${__MINIO_PATH}/${__MINIO_TRACES_PREFIX}/results.json.bz2"
-
quiet replay_minio_upload_images
-
- ci-fairy minio cp "$RESULTS"/junit.xml \
- "minio://${MINIO_HOST}${__MINIO_PATH}/${__MINIO_TRACES_PREFIX}/junit.xml"
fi
if [ -n "$USE_CASELIST" ]; then
More information about the mesa-commit
mailing list