Mesa (staging/20.0): gitlab-ci: Place files from the Mesa repo into the build tarball

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Mon Apr 13 22:06:48 UTC 2020


Module: Mesa
Branch: staging/20.0
Commit: 78a1deb958f7724094c4071ad0a685bc4297b200
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=78a1deb958f7724094c4071ad0a685bc4297b200

Author: Tomeu Vizoso <tomeu.vizoso at collabora.com>
Date:   Tue Mar 24 12:58:30 2020 +0100

gitlab-ci: Place files from the Mesa repo into the build tarball

There's some files from the .gitlab-ci directory that are needed in the
test stage and that, because the Mesa repository isn't checked out in
that stage, need to be made available through other means.

Because those files are going to be needed in LAVA devices, place them
ino the tarball containing the built files so it's available to both
gitlab-ci runners and LAVA devices.

Before those files were passed in the artifacts of the Gitlab CI job,
but this commit places them into the built tarball so scripts later in
the pipeline don't need to account for this discrepancy.

Signed-off-by: Tomeu Vizoso <tomeu.vizoso at collabora.com>
Reviewed-by: Eric Anholt <eric at anholt.net>
(cherry picked from commit 92f3c51560f9eb2387b1d929f694244c0b7bd577)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4462>

---

 .gitlab-ci.yml                  |  4 ++--
 .gitlab-ci/deqp-runner.sh       |  6 +++---
 .gitlab-ci/lava-deqp.yml.jinja2 | 13 ++++---------
 .gitlab-ci/piglit/run.sh        |  4 ++--
 .gitlab-ci/prepare-artifacts.sh | 17 ++++++-----------
 5 files changed, 17 insertions(+), 27 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 88b0bc197c6..a05eb059d4b 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -559,7 +559,7 @@ scons-old-llvm:
     LIBGL_ALWAYS_SOFTWARE: 1
     PIGLIT_NO_WINDOW: 1
   script:
-    - artifacts/piglit/run.sh
+    - install/piglit/run.sh
 
 piglit-quick_gl:
   extends: .piglit-test
@@ -596,7 +596,7 @@ piglit-quick_shader:
   variables:
     DEQP_SKIPS: deqp-default-skips.txt
   script:
-    - ./artifacts/deqp-runner.sh
+    - ./install/deqp-runner.sh
 
 .deqp-test-gl:
   extends:
diff --git a/.gitlab-ci/deqp-runner.sh b/.gitlab-ci/deqp-runner.sh
index 5e7543fb083..ab949a3ea5b 100755
--- a/.gitlab-ci/deqp-runner.sh
+++ b/.gitlab-ci/deqp-runner.sh
@@ -31,7 +31,7 @@ if [ -z "$DEQP_SKIPS" ]; then
    exit 1
 fi
 
-ARTIFACTS=`pwd`/artifacts
+INSTALL=`pwd`/install
 
 # Set up the driver environment.
 export LD_LIBRARY_PATH=`pwd`/install/lib/
@@ -66,7 +66,7 @@ if [ ! -s /tmp/case-list.txt ]; then
 fi
 
 if [ -n "$DEQP_EXPECTED_FAILS" ]; then
-    XFAIL="--xfail-list $ARTIFACTS/$DEQP_EXPECTED_FAILS"
+    XFAIL="--xfail-list $INSTALL/$DEQP_EXPECTED_FAILS"
 fi
 
 set +e
@@ -79,7 +79,7 @@ run_cts() {
         --deqp $deqp \
         --output $output \
         --caselist $caselist \
-        --exclude-list $ARTIFACTS/$DEQP_SKIPS \
+        --exclude-list $INSTALL/$DEQP_SKIPS \
         $XFAIL \
         --job ${DEQP_PARALLEL:-1} \
 	--allow-flakes true \
diff --git a/.gitlab-ci/lava-deqp.yml.jinja2 b/.gitlab-ci/lava-deqp.yml.jinja2
index c8bc8fa84e3..c34ed8fa38a 100644
--- a/.gitlab-ci/lava-deqp.yml.jinja2
+++ b/.gitlab-ci/lava-deqp.yml.jinja2
@@ -65,6 +65,9 @@ actions:
           - export {{ env_vars }}
 {% endif %}
 
+          # deqp-runner.sh assumes some stuff is in pwd
+          - cd /
+
           - export DEQP_NO_SAVE_RESULTS=1
           - 'export DEQP_RUNNER_OPTIONS="--compact-display false --shuffle false"'
           - export DEQP_EXPECTED_FAILS=deqp-{{ gpu_version }}-fails.txt
@@ -74,15 +77,7 @@ actions:
           - export CI_NODE_INDEX={{ ci_node_index }}
           - export CI_NODE_TOTAL={{ ci_node_total }}
 
-          # Put stuff where the runner script expects it
-          - mkdir artifacts
-          - mkdir results
-          - mkdir -p install/lib
-          - cp /deqp/$DEQP_EXPECTED_FAILS artifacts/.
-          - cp /deqp/$DEQP_SKIPS artifacts/.
-          - mv /mesa/lib/* install/lib/.
-
-          - "if sh /deqp/deqp-runner.sh; then
+          - "if sh /install/deqp-runner.sh; then
                   echo 'deqp: pass';
              else
                   echo 'deqp: fail';
diff --git a/.gitlab-ci/piglit/run.sh b/.gitlab-ci/piglit/run.sh
index 9b40e997388..e834cb4e978 100755
--- a/.gitlab-ci/piglit/run.sh
+++ b/.gitlab-ci/piglit/run.sh
@@ -3,7 +3,7 @@
 set -e
 set -o xtrace
 
-VERSION=`cat artifacts/VERSION`
+VERSION=`cat install/VERSION`
 
 cd /piglit
 
@@ -15,7 +15,7 @@ xvfb-run --server-args="-noreset" sh -c \
 
 PIGLIT_RESULTS=${PIGLIT_RESULTS:-$PIGLIT_PROFILES}
 mkdir -p .gitlab-ci/piglit
-cp $OLDPWD/artifacts/piglit/$PIGLIT_RESULTS.txt .gitlab-ci/piglit/$PIGLIT_RESULTS.txt.baseline
+cp $OLDPWD/install/piglit/$PIGLIT_RESULTS.txt .gitlab-ci/piglit/$PIGLIT_RESULTS.txt.baseline
 ./piglit summary console $OLDPWD/results | head -n -1 | grep -v ": pass" >.gitlab-ci/piglit/$PIGLIT_RESULTS.txt
 
 if diff -q .gitlab-ci/piglit/$PIGLIT_RESULTS.txt{.baseline,}; then
diff --git a/.gitlab-ci/prepare-artifacts.sh b/.gitlab-ci/prepare-artifacts.sh
index b1424b12102..3283eb75eec 100755
--- a/.gitlab-ci/prepare-artifacts.sh
+++ b/.gitlab-ci/prepare-artifacts.sh
@@ -22,13 +22,13 @@ find install -name \*.so -exec $STRIP {} \;
 
 # Test runs don't pull down the git tree, so put the dEQP helper
 # script and associated bits there.
-mkdir -p artifacts/
-cp VERSION artifacts/
-cp -Rp .gitlab-ci/deqp* artifacts/
-cp -Rp .gitlab-ci/piglit artifacts/
+cp VERSION install/
+cp -Rp .gitlab-ci/deqp* install/
+cp -Rp .gitlab-ci/piglit install/
 
 # Tar up the install dir so that symlinks and hardlinks aren't each
 # packed separately in the zip file.
+mkdir -p artifacts/
 tar -cf artifacts/install.tar install
 
 # If the container has LAVA stuff, prepare the artifacts for LAVA jobs
@@ -38,13 +38,8 @@ if [ -d /lava-files ]; then
         cp /lava-files/*.dtb artifacts/.
 
         # Pack ramdisk for LAVA
-        mkdir -p /lava-files/rootfs-${CROSS:-arm64}/mesa
-        cp -a install/* /lava-files/rootfs-${CROSS:-arm64}/mesa/.
-
-        cp .gitlab-ci/deqp-runner.sh /lava-files/rootfs-${CROSS:-arm64}/deqp/.
-        cp .gitlab-ci/deqp-*-fails.txt /lava-files/rootfs-${CROSS:-arm64}/deqp/.
-        cp .gitlab-ci/deqp-*-skips.txt /lava-files/rootfs-${CROSS:-arm64}/deqp/.
-        find /lava-files/rootfs-${CROSS:-arm64}/ -type f -printf "%s\t%i\t%p\n" | sort -n | tail -100
+        mkdir -p /lava-files/rootfs-${CROSS:-arm64}/install
+        cp -a install/* /lava-files/rootfs-${CROSS:-arm64}/install/.
 
         pushd /lava-files/rootfs-${CROSS:-arm64}/
         find -H  |  cpio -H newc -o | gzip -c - > $CI_PROJECT_DIR/artifacts/lava-rootfs-${CROSS:-arm64}.cpio.gz



More information about the mesa-commit mailing list