Mesa (main): ci/lava: Use per-job rootfs overlay for environment

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Jun 11 12:47:32 UTC 2021


Module: Mesa
Branch: main
Commit: d0e5203855c75ae7714954bde2147284d62d2c7f
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=d0e5203855c75ae7714954bde2147284d62d2c7f

Author: Daniel Stone <daniels at collabora.com>
Date:   Thu Jun 10 17:00:32 2021 +0100

ci/lava: Use per-job rootfs overlay for environment

Trying to get arbitrary strings suitably quoted for shell, embedded in a
YAML file, processed by Python templating, is like seven bad ideas all
embedded into one big can of bees.

Reuse the same script we use for bare-metal to generate the environment,
tar that up into a per-job overlay which is added to the
inter-pipeline-reusable rootfs built by the container jobs and the
intra-pipeline-reusable overlay built by the build jobs.

@anholt wrote a chunk of this - replacing the $ENV_VARS GitLab CI
variable with a Python loop across the POSIX job environment - in
!11192, but this still had YAML quoting nightmares, and was more
needless duplication between LAVA and bare-metal.

The diff is large and annoying, but is mostly a sed job to get
ENV_VARS="FOO=bar BAZ=quux" into FOO: bar\nBAZ: quux.

Signed-off-by: Daniel Stone <daniels at collabora.com>
Co-authored-by: Emma Anholt <emma at anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11309>

---

 .gitlab-ci/common/generate-env.sh             |  9 +++
 .gitlab-ci/lava/lava-gitlab-ci.yml            |  9 ++-
 .gitlab-ci/lava/lava-submit.sh                | 13 ++--
 .gitlab-ci/lava/lava.yml.jinja2               | 14 +----
 .gitlab-ci/lava/lava_job_submitter.py         |  6 +-
 .gitlab-ci/prepare-artifacts.sh               |  1 +
 src/amd/ci/gitlab-ci.yml                      |  6 +-
 src/gallium/drivers/iris/ci/gitlab-ci.yml     | 64 ++++++++++++--------
 src/gallium/drivers/lima/ci/gitlab-ci.yml     |  8 ++-
 src/gallium/drivers/panfrost/ci/gitlab-ci.yml | 85 +++++++++++++++++++--------
 src/gallium/drivers/radeonsi/ci/gitlab-ci.yml | 31 +++++++---
 11 files changed, 159 insertions(+), 87 deletions(-)

diff --git a/.gitlab-ci/common/generate-env.sh b/.gitlab-ci/common/generate-env.sh
index 2c6417860d3..0905d433f36 100755
--- a/.gitlab-ci/common/generate-env.sh
+++ b/.gitlab-ci/common/generate-env.sh
@@ -3,6 +3,8 @@
 for var in \
     ASAN_OPTIONS \
     BARE_METAL_TEST_SCRIPT \
+    BASE_SYSTEM_FORK_HOST_PREFIX \
+    BASE_SYSTEM_MAINLINE_HOST_PREFIX \
     BM_KERNEL_MODULES \
     BM_START_XORG \
     CI_COMMIT_BRANCH \
@@ -15,6 +17,7 @@ for var in \
     CI_NODE_TOTAL \
     CI_PAGES_DOMAIN \
     CI_PIPELINE_ID \
+    CI_PROJECT_DIR \
     CI_PROJECT_NAME \
     CI_PROJECT_PATH \
     CI_PROJECT_ROOT_NAMESPACE \
@@ -43,11 +46,17 @@ for var in \
     GPU_VERSION \
     IR3_SHADER_DEBUG \
     JOB_ARTIFACTS_BASE \
+    JOB_RESULTS_PATH \
+    JOB_ROOTFS_OVERLAY_PATH \
+    LAVA_START_XORG \
+    LAVA_TEST_SCRIPT \
+    MESA_BUILD_PATH \
     MESA_GL_VERSION_OVERRIDE \
     MESA_GLSL_VERSION_OVERRIDE \
     MESA_GLES_VERSION_OVERRIDE \
     MINIO_HOST \
     NIR_VALIDATE \
+    PAN_MESA_DEBUG \
     PIGLIT_FRACTION \
     PIGLIT_JUNIT_RESULTS \
     PIGLIT_OPTIONS \
diff --git a/.gitlab-ci/lava/lava-gitlab-ci.yml b/.gitlab-ci/lava/lava-gitlab-ci.yml
old mode 100644
new mode 100755
index 909316a15c5..5f7a7767619
--- a/.gitlab-ci/lava/lava-gitlab-ci.yml
+++ b/.gitlab-ci/lava/lava-gitlab-ci.yml
@@ -5,9 +5,9 @@
   interruptible: true
   variables:
     GIT_STRATEGY: none # testing doesn't build anything from source
-    ENV_VARS: "DEQP_PARALLEL=6"
-    FIXED_ENV_VARS: "CI_PIPELINE_ID=${CI_PIPELINE_ID} CI_JOB_ID=${CI_JOB_ID} CI_PAGES_DOMAIN=${CI_PAGES_DOMAIN} CI_PROJECT_NAME=${CI_PROJECT_NAME} CI_PROJECT_DIR=${CI_PROJECT_DIR} CI_PROJECT_PATH=${CI_PROJECT_PATH} CI_PROJECT_ROOT_NAMESPACE=${CI_PROJECT_ROOT_NAMESPACE} CI_SERVER_URL=${CI_SERVER_URL} DRIVER_NAME=${DRIVER_NAME} FDO_UPSTREAM_REPO=${FDO_UPSTREAM_REPO} PIGLIT_NO_WINDOW=1 PIGLIT_REPLAY_UPLOAD_TO_MINIO=1 MINIO_HOST=${MINIO_HOST} LAVA_TEST_SCRIPT=${LAVA_TEST_SCRIPT} VK_DRIVER=${VK_DRIVER} FLAKES_CHANNEL=${FLAKES_CHANNEL} PIPELINE_ARTIFACTS_BASE=${PIPELINE_ARTIFACTS_BASE} JOB_ARTIFACTS_BASE=${JOB_ARTIFACTS_BASE}"
-    DEQP_VERSION: gles2
+    DEQP_PARALLEL: 6 # should be replaced by per-machine definitions
+    DEQP_NO_SAVE_RESULTS: 1 # but why not ... ?
+    DEQP_VER: gles2
     # proxy used to cache data locally
     FDO_HTTP_CACHE_URI: "http://caching-proxy/cache/?uri="
     # base system generated by the container build job, shared between many pipelines
@@ -16,6 +16,7 @@
     BASE_SYSTEM_FORK_HOST_PATH: "${BASE_SYSTEM_HOST_PREFIX}/${CI_PROJECT_PATH}/${DISTRIBUTION_TAG}/${ARCH}"
     # per-job build artifacts
     MESA_BUILD_PATH: "${PIPELINE_ARTIFACTS_BASE}/mesa-${ARCH}.tar.gz"
+    JOB_ROOTFS_OVERLAY_PATH: "${JOB_ARTIFACTS_BASE}/job-rootfs-overlay.tar.gz"
     JOB_RESULTS_PATH: "${JOB_ARTIFACTS_BASE}/results.tar.gz"
   script:
     - ./artifacts/lava/lava-submit.sh
@@ -90,6 +91,8 @@
 
 .lava-piglit:
   variables:
+    PIGLIT_REPLAY_DEVICE_NAME: "gl-${GPU_VERSION}"
+    PIGLIT_RESULTS: "${GPU_VERSION}-${PIGLIT_PROFILES}"
     LAVA_TEST_SCRIPT: "/install/piglit/piglit-runner.sh"
 
 .lava-piglit-traces:amd64:
diff --git a/.gitlab-ci/lava/lava-submit.sh b/.gitlab-ci/lava/lava-submit.sh
index fd83c598aae..557c170ca8e 100755
--- a/.gitlab-ci/lava/lava-submit.sh
+++ b/.gitlab-ci/lava/lava-submit.sh
@@ -4,7 +4,8 @@ set -e
 set -x
 
 rm -rf results
-mkdir -p results
+mkdir -p results/job-rootfs-overlay/
+artifacts/ci-common/generate-env.sh > results/job-rootfs-overlay/environment.sh
 
 # Try to use the kernel and rootfs built in mainline first, so we're more
 # likely to hit cache
@@ -14,20 +15,22 @@ else
 	BASE_SYSTEM_HOST_PATH="${BASE_SYSTEM_FORK_HOST_PATH}"
 fi
 
+tar zcf job-rootfs-overlay.tar.gz -C results/job-rootfs-overlay/ .
+ci-fairy minio login "${CI_JOB_JWT}"
+ci-fairy minio cp job-rootfs-overlay.tar.gz "minio://${JOB_ROOTFS_OVERLAY_PATH}"
+
 artifacts/lava/lava_job_submitter.py \
 	--template artifacts/lava/lava.yml.jinja2 \
 	--pipeline-info "$CI_PIPELINE_URL on $CI_COMMIT_REF_NAME ${CI_NODE_INDEX}/${CI_NODE_TOTAL}" \
 	--base-system-url-prefix "https://${BASE_SYSTEM_HOST_PATH}" \
 	--mesa-build-url "${FDO_HTTP_CACHE_URI:-}https://${MESA_BUILD_PATH}" \
+	--job-rootfs-overlay-url "${FDO_HTTP_CACHE_URI:-}https://${JOB_ROOTFS_OVERLAY_PATH}" \
 	--device-type ${DEVICE_TYPE} \
 	--dtb ${DTB} \
-	--env-vars "${ENV_VARS} ${FIXED_ENV_VARS}" \
 	--jwt "${CI_JOB_JWT}" \
 	--deqp-version ${DEQP_VERSION} \
 	--kernel-image-name ${KERNEL_IMAGE_NAME} \
 	--kernel-image-type "${KERNEL_IMAGE_TYPE}" \
 	--gpu-version ${GPU_VERSION} \
 	--boot-method ${BOOT_METHOD} \
-	--lava-tags "${LAVA_TAGS}" \
-	--ci-node-index "${CI_NODE_INDEX}" \
-	--ci-node-total "${CI_NODE_TOTAL}" | tee results/lava.log
+	--lava-tags "${LAVA_TAGS}" | tee results/lava.log
diff --git a/.gitlab-ci/lava/lava.yml.jinja2 b/.gitlab-ci/lava/lava.yml.jinja2
index 71097ae7e61..78e0f6935f1 100644
--- a/.gitlab-ci/lava/lava.yml.jinja2
+++ b/.gitlab-ci/lava/lava.yml.jinja2
@@ -83,6 +83,9 @@ actions:
           - for i in 1 2 3; do sntp -sS pool.ntp.org && break || sleep 2; done
 
           - wget -S --progress=dot:giga -O- {{ mesa_build_url }} | tar -xz
+          - mkdir -p /job-overlay
+          - wget -S --progress=dot:giga -O- {{ job_rootfs_overlay_url }} | tar -xz -C /job-overlay/
+          - . /job-overlay/environment.sh
           - mkdir -p $CI_PROJECT_DIR
           - ln -sf /install $CI_PROJECT_DIR/install
 
@@ -100,17 +103,6 @@ actions:
           - GPU_AUTOSUSPEND=`find /sys/devices -name autosuspend_delay_ms | grep gpu | head -1`
           - echo -1 > $GPU_AUTOSUSPEND || true
 
-{% if env_vars %}
-          - export {{ env_vars }}
-{% endif %}
-          - export DEQP_NO_SAVE_RESULTS=1
-          - export GPU_VERSION={{ gpu_version }}
-          - export DEQP_VER={{ deqp_version }}
-          - export PIGLIT_REPLAY_DESCRIPTION_FILE="/install/traces-${DRIVER_NAME}.yml"
-          - export PIGLIT_REPLAY_DEVICE_NAME=gl-{{ gpu_version }}
-          - export PIGLIT_REPLAY_REFERENCE_IMAGES_BASE="${MINIO_HOST}/mesa-tracie-results/${CI_PROJECT_PATH}"
-          - export PIGLIT_RESULTS={{ gpu_version }}-${PIGLIT_PROFILES}
-
           - export CI_JOB_JWT="{{ jwt }}"
           # Store Mesa's disk cache under /tmp, rather than sending it out over NFS.
           - export XDG_CACHE_HOME=/tmp
diff --git a/.gitlab-ci/lava/lava_job_submitter.py b/.gitlab-ci/lava/lava_job_submitter.py
index 9ed098ce96a..d82fe4443af 100755
--- a/.gitlab-ci/lava/lava_job_submitter.py
+++ b/.gitlab-ci/lava/lava_job_submitter.py
@@ -51,12 +51,11 @@ def generate_lava_yaml(args):
     env = jinja2.Environment(loader = jinja2.FileSystemLoader(os.path.dirname(args.template)), trim_blocks=True, lstrip_blocks=True)
     template = env.get_template(os.path.basename(args.template))
 
-    env_vars = "%s CI_NODE_INDEX=%s CI_NODE_TOTAL=%s" % (args.env_vars, args.ci_node_index, args.ci_node_total)
-
     values = {}
     values['pipeline_info'] = args.pipeline_info
     values['base_system_url_prefix'] = args.base_system_url_prefix
     values['mesa_build_url'] = args.mesa_build_url
+    values['job_rootfs_overlay_url'] = args.job_rootfs_overlay_url
     values['device_type'] = args.device_type
     values['dtb'] = args.dtb
     values['kernel_image_name'] = args.kernel_image_name
@@ -64,7 +63,6 @@ def generate_lava_yaml(args):
     values['gpu_version'] = args.gpu_version
     values['boot_method'] = args.boot_method
     values['tags'] = args.lava_tags
-    values['env_vars'] = env_vars
     values['deqp_version'] = args.deqp_version
 
     if args.dump_yaml:
@@ -203,6 +201,7 @@ if __name__ == '__main__':
     parser.add_argument("--pipeline-info")
     parser.add_argument("--base-system-url-prefix")
     parser.add_argument("--mesa-build-url")
+    parser.add_argument("--job-rootfs-overlay-url")
     parser.add_argument("--device-type")
     parser.add_argument("--dtb", nargs='?', default="")
     parser.add_argument("--kernel-image-name")
@@ -210,7 +209,6 @@ if __name__ == '__main__':
     parser.add_argument("--gpu-version")
     parser.add_argument("--boot-method")
     parser.add_argument("--lava-tags", nargs='?', default="")
-    parser.add_argument("--env-vars", nargs='?', default="")
     parser.add_argument("--jwt")
     parser.add_argument("--deqp-version")
     parser.add_argument("--ci-node-index")
diff --git a/.gitlab-ci/prepare-artifacts.sh b/.gitlab-ci/prepare-artifacts.sh
index d30151f5313..a9a47daedb0 100755
--- a/.gitlab-ci/prepare-artifacts.sh
+++ b/.gitlab-ci/prepare-artifacts.sh
@@ -45,6 +45,7 @@ find . -path \*/ci/\*.txt \
 # packed separately in the zip file.
 mkdir -p artifacts/
 tar -cf artifacts/install.tar install
+cp -Rp .gitlab-ci/common artifacts/ci-common
 cp -Rp .gitlab-ci/lava artifacts/
 
 if [ -n "$MINIO_ARTIFACT_NAME" ]; then
diff --git a/src/amd/ci/gitlab-ci.yml b/src/amd/ci/gitlab-ci.yml
index 4a3d445084f..4194da847c5 100644
--- a/src/amd/ci/gitlab-ci.yml
+++ b/src/amd/ci/gitlab-ci.yml
@@ -60,8 +60,10 @@ radv_stoney_vkcts:amd64:
     - .radv-rules
   parallel: 3
   variables:
-    DEQP_VERSION: vk
-    ENV_VARS: "DEQP_FRACTION=10 DEQP_PARALLEL=4 DEQP_EXPECTED_RENDERER=STONEY"
+    DEQP_VER: vk
+    DEQP_FRACTION: 10
+    DEQP_PARALLEL: 4
+    DEQP_EXPECTED_RENDERER: STONEY
     DEVICE_TYPE: hp-11A-G6-EE-grunt
     DTB: ""
     GPU_VERSION: radv-stoney-aco
diff --git a/src/gallium/drivers/iris/ci/gitlab-ci.yml b/src/gallium/drivers/iris/ci/gitlab-ci.yml
index ea9f56a08d9..d8dcd9ba264 100644
--- a/src/gallium/drivers/iris/ci/gitlab-ci.yml
+++ b/src/gallium/drivers/iris/ci/gitlab-ci.yml
@@ -15,7 +15,7 @@
   variables:
     DEVICE_TYPE: asus-C523NA-A20057-coral
     GPU_VERSION: iris-apl
-    ENV_VARS: "DEQP_EXPECTED_RENDERER=APL"
+    DEQP_EXPECTED_RENDERER: APL
   tags:
     - mesa-ci-x86-64-lava-asus-C523NA-A20057-coral
 
@@ -26,7 +26,7 @@
   variables:
     DEVICE_TYPE: hp-x360-12b-n4000-octopus
     GPU_VERSION: iris-glk
-    ENV_VARS: "DEQP_EXPECTED_RENDERER=GLK"
+    DEQP_EXPECTED_RENDERER: GLK
   tags:
     - mesa-ci-x86-64-lava-hp-x360-12b-n4000-octopus
 
@@ -36,7 +36,7 @@
   variables:
     DEVICE_TYPE: asus-C433TA-AJ0005-rammus
     GPU_VERSION: iris-amly
-    ENV_VARS: "DEQP_EXPECTED_RENDERER=AML"
+    DEQP_EXPECTED_RENDERER: AML
   tags:
     - mesa-ci-x86-64-lava-asus-C433TA-AJ0005-rammus
 
@@ -46,7 +46,7 @@
   variables:
     DEVICE_TYPE: hp-x360-14-G1-sona
     GPU_VERSION: iris-kbl
-    ENV_VARS: "DEQP_EXPECTED_RENDERER=KBL"
+    DEQP_EXPECTED_RENDERER: KBL
   tags:
     - mesa-ci-x86-64-lava-hp-x360-14-G1-sona
 
@@ -54,21 +54,23 @@
   extends:
     - .iris-apl-test
   variables:
-    DEQP_VERSION: gles2
+    DEQP_VER: gles2
 
 .iris-apl-gles3:
   extends:
     - .iris-apl-test
   variables:
-    DEQP_VERSION: gles3
-    ENV_VARS: "DEQP_EXPECTED_RENDERER=APL DEQP_FRACTION=4"
+    DEQP_VER: gles3
+    DEQP_EXPECTED_RENDERER: APL
+    DEQP_FRACTION: 4
 
 .iris-apl-gles31:
   extends:
     - .iris-apl-test
   variables:
-    DEQP_VERSION: gles31
-    ENV_VARS: "DEQP_EXPECTED_RENDERER=APL DEQP_FRACTION=6"
+    DEQP_VER: gles31
+    DEQP_EXPECTED_RENDERER: APL
+    DEQP_FRACTION: 6
 
 # this appears to silently kill the board sometimes.  Leave it as a manual job for debugging.
 .iris-apl-gl:
@@ -76,33 +78,35 @@
     - .iris-apl-test
     - .test-manual-mr
   variables:
-    DEQP_VERSION: gl46
+    DEQP_VER: gl46
 
 .iris-apl-egl:
   extends:
     - .iris-apl-test
   variables:
-    DEQP_VERSION: egl
+    DEQP_VER: egl
 
 iris-glk-gles2:
   extends:
     - .iris-glk-test
   variables:
-    DEQP_VERSION: gles2
+    DEQP_VER: gles2
 
 iris-glk-gles3:
   extends:
     - .iris-glk-test
   variables:
-    DEQP_VERSION: gles3
-    ENV_VARS: "DEQP_EXPECTED_RENDERER=GLK DEQP_FRACTION=8"
+    DEQP_VER: gles3
+    DEQP_EXPECTED_RENDERER: GLK
+    DEQP_FRACTION: 8
 
 iris-glk-gles31:
   extends:
     - .iris-glk-test
   variables:
-    DEQP_VERSION: gles31
-    ENV_VARS: "DEQP_EXPECTED_RENDERER=GLK DEQP_FRACTION=8"
+    DEQP_VER: gles31
+    DEQP_EXPECTED_RENDERER: GLK
+    DEQP_FRACTION: 8
 
 # this appears to be just unusably slow, timed out at an hour.  Needs debugging,
 # so leave it as a manual job.
@@ -111,51 +115,59 @@ iris-glk-gl:
     - .iris-glk-test
     - .test-manual-mr
   variables:
-    DEQP_VERSION: gl46
+    DEQP_VER: gl46
 
 iris-glk-egl:
   extends:
     - .iris-glk-test
   variables:
-    DEQP_VERSION: egl
+    DEQP_VER: egl
 
 iris-amly-gles2:
   extends:
     - .iris-amly-test
   variables:
-    DEQP_VERSION: gles2
+    DEQP_VER: gles2
 
 iris-amly-gles3:
   extends:
     - .iris-amly-test
   variables:
-    DEQP_VERSION: gles3
-    ENV_VARS: "DEQP_EXPECTED_RENDERER=AML DEQP_FRACTION=2"
+    DEQP_VER: gles3
+    DEQP_EXPECTED_RENDERER: AML
+    DEQP_FRACTION: 2
 
 iris-amly-gles31:
   extends:
     - .iris-amly-test
   variables:
-    DEQP_VERSION: gles31
-    ENV_VARS: "DEQP_EXPECTED_RENDERER=AML DEQP_FRACTION=2"
+    DEQP_VER: gles31
+    DEQP_EXPECTED_RENDERER: AML
+    DEQP_FRACTION: 2
 
 iris-amly-gl:
   extends:
     - .iris-amly-test
   variables:
-    DEQP_VERSION: gl46
+    DEQP_VER: gl46
 
 iris-amly-egl:
   extends:
     - .iris-amly-test
   variables:
-    DEQP_VERSION: egl
+    DEQP_VER: egl
 
 .iris-traces:
   extends:
     - .lava-traces-base
   variables:
-    ENV_VARS: "EGL_PLATFORM=surfaceless PIGLIT_PROFILES=replay PIGLIT_JUNIT_RESULTS=1 PIGLIT_REPLAY_EXTRA_ARGS=--keep-image"
+    EGL_PLATFORM: surfaceless
+    PIGLIT_PROFILES: replay
+    PIGLIT_JUNIT_RESULTS: 1
+    PIGLIT_REPLAY_DEVICE_NAME: "gl-${GPU_VERSION}"
+    PIGLIT_RESULTS: "${GPU_VERSION}-${PIGLIT_PROFILES}"
+    PIGLIT_REPLAY_DESCRIPTION_FILE: "/install/traces-iris.yml"
+    PIGLIT_REPLAY_EXTRA_ARGS: --keep-image
 
 .iris-apl-traces:
   variables:
diff --git a/src/gallium/drivers/lima/ci/gitlab-ci.yml b/src/gallium/drivers/lima/ci/gitlab-ci.yml
index f981b738052..5e59655453c 100644
--- a/src/gallium/drivers/lima/ci/gitlab-ci.yml
+++ b/src/gallium/drivers/lima/ci/gitlab-ci.yml
@@ -7,7 +7,9 @@
     DEVICE_TYPE: sun8i-h3-libretech-all-h3-cc
     DTB: ${DEVICE_TYPE}
     GPU_VERSION: lima
-    ENV_VARS: "DEQP_PARALLEL=3 DEQP_EXPECTED_RENDERER=Mali400"
+    DEQP_PARALLEL: 3
+    DEQP_EXPECTED_RENDERER: Mali400
+
   tags:
     - mesa-ci-aarch64-lava-baylibre
 
@@ -19,6 +21,8 @@
     DEVICE_TYPE: meson-gxl-s905x-libretech-cc
     DTB: ${DEVICE_TYPE}
     GPU_VERSION: lima
-    ENV_VARS: "DEQP_PARALLEL=6 DEQP_EXPECTED_RENDERER=Mali450"
+    DEQP_PARALLEL: 6
+    DEQP_EXPECTED_RENDERER: Mali450
+
   tags:
     - mesa-ci-aarch64-lava-baylibre
diff --git a/src/gallium/drivers/panfrost/ci/gitlab-ci.yml b/src/gallium/drivers/panfrost/ci/gitlab-ci.yml
index dbba6dcbf6b..39f66615dbc 100644
--- a/src/gallium/drivers/panfrost/ci/gitlab-ci.yml
+++ b/src/gallium/drivers/panfrost/ci/gitlab-ci.yml
@@ -1,6 +1,7 @@
 .panfrost-test:
   variables:
     FLAKES_CHANNEL: "#panfrost-ci"
+    PAN_MESA_DEBUG: sync
 
 panfrost-t720-gles2:arm64:
   extends:
@@ -9,9 +10,10 @@ panfrost-t720-gles2:arm64:
     - .panfrost-test
   variables:
     DEVICE_TYPE: sun50i-h6-pine-h64
-    DTB: ${DEVICE_TYPE}
+    DTB: $DEVICE_TYPE
     GPU_VERSION: panfrost-t720
-    ENV_VARS: "PAN_MESA_DEBUG=sync DEQP_PARALLEL=6 DEQP_EXPECTED_RENDERER=T720"
+    DEQP_PARALLEL: 6
+    DEQP_EXPECTED_RENDERER: T720
   tags:
     - mesa-ci-x86-64-lava-sun50i-h6-pine-h64
 
@@ -22,11 +24,12 @@ panfrost-t760-gles2:armhf:
     - .panfrost-test
   variables:
     DEVICE_TYPE: rk3288-veyron-jaq
-    DTB: ${DEVICE_TYPE}
+    DTB: $DEVICE_TYPE
     GPU_VERSION: panfrost-t760
     BOOT_METHOD: depthcharge
     KERNEL_IMAGE_TYPE: ""
-    ENV_VARS: "PAN_MESA_DEBUG=sync DEQP_PARALLEL=6 DEQP_EXPECTED_RENDERER=T760"
+    DEQP_PARALLEL: 6
+    DEQP_EXPECTED_RENDERER: T760
   tags:
     - mesa-ci-x86-64-lava-rk3288-veyron-jaq
 
@@ -37,12 +40,20 @@ panfrost-t760-traces:armhf:
     - .panfrost-test
   variables:
     DEVICE_TYPE: rk3288-veyron-jaq
-    DTB: ${DEVICE_TYPE}
+    DTB: $DEVICE_TYPE
     GPU_VERSION: panfrost-t760
     DRIVER_NAME: panfrost
     BOOT_METHOD: depthcharge
     KERNEL_IMAGE_TYPE: ""
-    ENV_VARS: "PAN_MESA_DEBUG=deqp,sync MESA_GLES_VERSION_OVERRIDE=3.1 MESA_GL_VERSION_OVERRIDE=3.3 MESA_GLSL_VERSION_OVERRIDE=330 EGL_PLATFORM=surfaceless PIGLIT_PROFILES=replay PIGLIT_JUNIT_RESULTS=1 PIGLIT_REPLAY_EXTRA_ARGS=--keep-image"
+    PAN_MESA_DEBUG: "deqp,sync"
+    MESA_GLES_VERSION_OVERRIDE: "3.1"
+    MESA_GL_VERSION_OVERRIDE: "3.3"
+    MESA_GLSL_VERSION_OVERRIDE: 330
+    EGL_PLATFORM: surfaceless
+    PIGLIT_PROFILES: replay
+    PIGLIT_JUNIT_RESULTS: 1
+    PIGLIT_REPLAY_DESCRIPTION_FILE: "/install/traces-panfrost.yml"
+    PIGLIT_REPLAY_EXTRA_ARGS: "--keep-image"
   tags:
     - mesa-ci-x86-64-lava-rk3288-veyron-jaq
 
@@ -52,7 +63,7 @@ panfrost-t760-traces:armhf:
     - .panfrost-test
   variables:
     DEVICE_TYPE: rk3399-gru-kevin
-    DTB: ${DEVICE_TYPE}
+    DTB: $DEVICE_TYPE
     GPU_VERSION: panfrost-t860
     DRIVER_NAME: panfrost
     BOOT_METHOD: depthcharge
@@ -65,7 +76,8 @@ panfrost-t760-traces:armhf:
     - .lava-test:arm64
     - .lava-rk3399-gru-kevin
   variables:
-    ENV_VARS: "PAN_MESA_DEBUG=sync DEQP_PARALLEL=6 DEQP_EXPECTED_RENDERER=T860"
+    DEQP_PARALLEL: 6
+    DEQP_EXPECTED_RENDERER: T860
 
 panfrost-t860-gles3:arm64:
   parallel: 2
@@ -73,24 +85,37 @@ panfrost-t860-gles3:arm64:
     - .lava-test:arm64
     - .lava-rk3399-gru-kevin
   variables:
-    DEQP_VERSION: gles3
-    ENV_VARS: "PAN_MESA_DEBUG=sync DEQP_PARALLEL=6 DEQP_EXPECTED_RENDERER=T860"
+    DEQP_VER: gles3
+    DEQP_PARALLEL: 6
+    DEQP_EXPECTED_RENDERER: T860
 
 panfrost-t860-gles31:arm64:
   extends:
     - .lava-test:arm64
     - .lava-rk3399-gru-kevin
   variables:
-    DEQP_VERSION: gles31
+    DEQP_VER: gles31
+    PAN_MESA_DEBUG: "deqp,sync"
+    MESA_GLES_VERSION_OVERRIDE: "3.1"
+    MESA_GLSL_VERSION_OVERRIDE: 310
     DEQP_FRACTION: 4
-    ENV_VARS: "PAN_MESA_DEBUG=deqp,sync MESA_GLES_VERSION_OVERRIDE=3.1 MESA_GLSL_VERSION_OVERRIDE=310 DEQP_PARALLEL=1 DEQP_EXPECTED_RENDERER=T860"
+    DEQP_PARALLEL: 1
+    DEQP_EXPECTED_RENDERER: T860
 
 panfrost-t860-traces:arm64:
   extends:
     - .lava-piglit-traces:arm64
     - .lava-rk3399-gru-kevin
   variables:
-    ENV_VARS: "PAN_MESA_DEBUG=deqp,sync MESA_GLES_VERSION_OVERRIDE=3.1 MESA_GL_VERSION_OVERRIDE=3.3 MESA_GLSL_VERSION_OVERRIDE=330 EGL_PLATFORM=surfaceless PIGLIT_PROFILES=replay PIGLIT_JUNIT_RESULTS=1 PIGLIT_REPLAY_EXTRA_ARGS=--keep-image"
+    PAN_MESA_DEBUG: "deqp,sync"
+    MESA_GLES_VERSION_OVERRIDE: "3.1"
+    MESA_GL_VERSION_OVERRIDE: "3.3"
+    MESA_GLSL_VERSION_OVERRIDE: 330
+    EGL_PLATFORM: surfaceless
+    PIGLIT_PROFILES: replay
+    PIGLIT_JUNIT_RESULTS: 1
+    PIGLIT_REPLAY_DESCRIPTION_FILE: "/install/traces-panfrost.yml"
+    PIGLIT_REPLAY_EXTRA_ARGS: --keep-image
 
 .lava-meson-g12b-a311d-khadas-vim3:
   extends:
@@ -98,7 +123,7 @@ panfrost-t860-traces:arm64:
     - .panfrost-test
   variables:
     DEVICE_TYPE: meson-g12b-a311d-khadas-vim3
-    DTB: ${DEVICE_TYPE}
+    DTB: $DEVICE_TYPE
     GPU_VERSION: panfrost-g52
   tags:
     - mesa-ci-x86-64-lava-meson-g12b-a311d-khadas-vim3
@@ -108,7 +133,8 @@ panfrost-t860-traces:arm64:
     - .lava-test:arm64
     - .lava-meson-g12b-a311d-khadas-vim3
   variables:
-    ENV_VARS: "DEQP_PARALLEL=6 DEQP_EXPECTED_RENDERER=G52"
+    DEQP_PARALLEL: 6
+    DEQP_EXPECTED_RENDERER: G52
 
 panfrost-g52-gles3:arm64:
   parallel: 2
@@ -116,16 +142,20 @@ panfrost-g52-gles3:arm64:
     - .lava-test:arm64
     - .lava-meson-g12b-a311d-khadas-vim3
   variables:
-    DEQP_VERSION: gles3
-    ENV_VARS: "PAN_MESA_DEBUG=deqp,sync DEQP_PARALLEL=6 DEQP_EXPECTED_RENDERER=G52"
+    DEQP_VER: gles3
+    PAN_MESA_DEBUG: "deqp,sync"
+    DEQP_PARALLEL: 6
+    DEQP_EXPECTED_RENDERER: G52
 
 panfrost-g52-gles31:arm64:
   extends:
     - .lava-test:arm64
     - .lava-meson-g12b-a311d-khadas-vim3
   variables:
-    DEQP_VERSION: gles31
-    ENV_VARS: "PAN_MESA_DEBUG=deqp,sync DEQP_PARALLEL=6 DEQP_EXPECTED_RENDERER=G52"
+    DEQP_VER: gles31
+    PAN_MESA_DEBUG: "deqp,sync"
+    DEQP_PARALLEL: 6
+    DEQP_EXPECTED_RENDERER: G52
 
 .lava-acer-mt8183-cp311-3h-jacuzzi:
   extends:
@@ -145,7 +175,7 @@ panfrost-g52-gles31:arm64:
     - .lava-test:arm64
     - .lava-acer-mt8183-cp311-3h-jacuzzi
   variables:
-    ENV_VARS: "DEQP_EXPECTED_RENDERER=G72"
+    DEQP_EXPECTED_RENDERER: G72
 
 .panfrost-g72-gles3:arm64:
   parallel: 2
@@ -153,16 +183,18 @@ panfrost-g52-gles31:arm64:
     - .lava-test:arm64
     - .lava-acer-mt8183-cp311-3h-jacuzzi
   variables:
-    DEQP_VERSION: gles3
-    ENV_VARS: "PAN_MESA_DEBUG=deqp,sync DEQP_EXPECTED_RENDERER=G72"
+    DEQP_VER: gles3
+    PAN_MESA_DEBUG: "deqp,sync"
+    DEQP_EXPECTED_RENDERER: G72
 
 .panfrost-g72-gles31:arm64:
   extends:
     - .lava-test:arm64
     - .lava-acer-mt8183-cp311-3h-jacuzzi
   variables:
-    DEQP_VERSION: gles31
-    ENV_VARS: "PAN_MESA_DEBUG=deqp,sync DEQP_EXPECTED_RENDERER=G72"
+    DEQP_VER: gles31
+    PAN_MESA_DEBUG: "deqp,sync"
+    DEQP_EXPECTED_RENDERER: G72
 
 .panfrost-t820-gles2:arm64:
   extends:
@@ -171,9 +203,10 @@ panfrost-g52-gles31:arm64:
     - .panfrost-test
   variables:
     DEVICE_TYPE: meson-gxm-khadas-vim2
-    DTB: ${DEVICE_TYPE}
+    DTB: $DEVICE_TYPE
     GPU_VERSION: panfrost-t820
     LAVA_TAGS: panfrost
-    ENV_VARS: "PAN_MESA_DEBUG=sync DEQP_PARALLEL=6 DEQP_EXPECTED_RENDERER=T820"
+    DEQP_PARALLEL: 6
+    DEQP_EXPECTED_RENDERER: T820
   tags:
     - mesa-ci-aarch64-lava-baylibre
diff --git a/src/gallium/drivers/radeonsi/ci/gitlab-ci.yml b/src/gallium/drivers/radeonsi/ci/gitlab-ci.yml
index 90d35f449d3..6cb8e7cbdcf 100644
--- a/src/gallium/drivers/radeonsi/ci/gitlab-ci.yml
+++ b/src/gallium/drivers/radeonsi/ci/gitlab-ci.yml
@@ -8,7 +8,8 @@
     BOOT_METHOD: depthcharge
     KERNEL_IMAGE_TYPE: ""
     DRIVER_NAME: radeonsi
-    ENV_VARS: "DEQP_PARALLEL=4 DEQP_EXPECTED_RENDERER=STONEY"
+    DEQP_PARALLEL: 4
+    DEQP_EXPECTED_RENDERER: STONEY
   tags:
     - mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt
 
@@ -21,7 +22,7 @@ radeonsi-stoney-gles2:amd64:
   extends:
     - .radeonsi-stoney-deqp:amd64
   variables:
-    DEQP_VERSION: gles2
+    DEQP_VER: gles2
 
 # Run two jobs in parallel each running 1/4th of the test suite
 radeonsi-stoney-gles3:amd64:
@@ -29,8 +30,11 @@ radeonsi-stoney-gles3:amd64:
     - .radeonsi-stoney-deqp:amd64
   parallel: 2
   variables:
-    DEQP_VERSION: gles3
-    ENV_VARS: "DEQP_PARALLEL=4 DEQP_EXPECTED_RENDERER=STONEY DEQP_FRACTION=2"
+    DEQP_VER: gles3
+    DEQP_PARALLEL: 4
+    DEQP_EXPECTED_RENDERER: STONEY
+    DEQP_FRACTION: 2
+
 
 # Run two jobs in parallel each running 1/4th of the test suite
 radeonsi-stoney-gles31:amd64:
@@ -38,15 +42,22 @@ radeonsi-stoney-gles31:amd64:
     - .radeonsi-stoney-deqp:amd64
   parallel: 2
   variables:
-    DEQP_VERSION: gles31
-    ENV_VARS: "DEQP_PARALLEL=4 DEQP_EXPECTED_RENDERER=STONEY DEQP_FRACTION=2"
+    DEQP_VER: gles31
+    DEQP_PARALLEL: 4
+    DEQP_EXPECTED_RENDERER: STONEY
+    DEQP_FRACTION: 2
+
 
 radeonsi-stoney-traces:amd64:
   extends:
     - .lava-piglit-traces:amd64
     - .radeonsi-stoney-test:amd64
   variables:
-    ENV_VARS: "EGL_PLATFORM=surfaceless PIGLIT_PROFILES=replay PIGLIT_JUNIT_RESULTS=1 PIGLIT_REPLAY_EXTRA_ARGS=--keep-image"
+    EGL_PLATFORM: surfaceless
+    PIGLIT_PROFILES: replay
+    PIGLIT_JUNIT_RESULTS: 1
+    PIGLIT_REPLAY_DESCRIPTION_FILE: "/install/traces-radeonsi.yml"
+    PIGLIT_REPLAY_EXTRA_ARGS: --keep-image
   tags:
     - mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt
 
@@ -55,4 +66,8 @@ radeonsi-stoney-piglit-gl:amd64:
     - .lava-piglit:amd64
     - .radeonsi-stoney-test:amd64
   variables:
-    ENV_VARS: "PIGLIT_FRACTION=4 PIGLIT_PLATFORM=mixed_glx_egl PIGLIT_PROFILES=quick_gl PIGLIT_JUNIT_RESULTS=1 LAVA_START_XORG=1"
+    PIGLIT_FRACTION: 4
+    PIGLIT_PLATFORM: mixed_glx_egl
+    PIGLIT_PROFILES: quick_gl
+    PIGLIT_JUNIT_RESULTS: 1
+    LAVA_START_XORG: 1



More information about the mesa-commit mailing list