ci/lava: Wrap submission in a shell script
authorDaniel Stone <daniels@collabora.com>
Thu, 10 Jun 2021 12:11:02 +0000 (13:11 +0100)
committerMarge Bot <eric+marge@anholt.net>
Fri, 11 Jun 2021 12:13:00 +0000 (12:13 +0000)
Just do what we're already doing but in a shell script, which will make
it less tedious to expand out later.

Signed-off-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11309>

.gitlab-ci/lava/lava-gitlab-ci.yml
.gitlab-ci/lava/lava-submit.sh [new file with mode: 0755]

index c7d001c..96f4cc4 100644 (file)
     ARTIFACTS_PREFIX: "https://${MINIO_HOST}/mesa-lava"
     MESA_URL: "http://caching-proxy/cache/?uri=https://${MINIO_HOST}/artifacts/${CI_PROJECT_PATH}/${CI_PIPELINE_ID}/mesa-${ARCH}.tar.gz"
   script:
-    # Try to use the kernel and rootfs built in mainline first, to save cycles
-    - >
-      if wget -q --method=HEAD "${ARTIFACTS_PREFIX}/${FDO_UPSTREAM_REPO}/${DISTRIBUTION_TAG}/${ARCH}/done"; then
-        ARTIFACTS_URL="${ARTIFACTS_PREFIX}/${FDO_UPSTREAM_REPO}/${DISTRIBUTION_TAG}/${ARCH}"
-      else
-        ARTIFACTS_URL="${ARTIFACTS_PREFIX}/${CI_PROJECT_PATH}/${DISTRIBUTION_TAG}/${ARCH}"
-      fi
-    - rm -rf results
-    - mkdir -p results
-    - >
-      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-artifacts-url ${ARTIFACTS_URL} \
-        --mesa-url ${MESA_URL} \
-        --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
+    - ./artifacts/lava/lava-submit.sh
   artifacts:
     name: "mesa_${CI_JOB_NAME}"
     when: always
diff --git a/.gitlab-ci/lava/lava-submit.sh b/.gitlab-ci/lava/lava-submit.sh
new file mode 100755 (executable)
index 0000000..f3e6717
--- /dev/null
@@ -0,0 +1,32 @@
+#!/bin/bash
+
+set -e
+set -x
+
+rm -rf results
+mkdir -p results
+
+# Try to use the kernel and rootfs built in mainline first, to save cycles
+if wget -q --method=HEAD "${ARTIFACTS_PREFIX}/${FDO_UPSTREAM_REPO}/${DISTRIBUTION_TAG}/${ARCH}/done"; then
+       ARTIFACTS_URL="${ARTIFACTS_PREFIX}/${FDO_UPSTREAM_REPO}/${DISTRIBUTION_TAG}/${ARCH}"
+else
+       ARTIFACTS_URL="${ARTIFACTS_PREFIX}/${CI_PROJECT_PATH}/${DISTRIBUTION_TAG}/${ARCH}"
+fi
+
+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-artifacts-url ${ARTIFACTS_URL} \
+       --mesa-url ${MESA_URL} \
+       --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