From 5528ed7a5b1d3f3246ea43e35f4dfabe68ed7d5a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=A0t=C4=9Bp=C3=A1n=20Bal=C3=A1=C5=BEik?= Date: Wed, 15 Oct 2025 18:33:18 +0200 Subject: [PATCH] Check the validity of cross-version-config-test's XML output This was overlooked before. --- .gitlab-ci.yml | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index cd8fd309bf..8687380270 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -939,8 +939,17 @@ cross-version-config-tests: # should not be run. - rm -r dlzexternal - rm -r dyndb + # This script needs to: 1) fail if the tests fail, 2) fail if + # the junit.xml file is broken, 3) produce the junit.xml file even if + # the tests fail. Therefore, $RET is used to "cache" the + # result of running pytest as interrupting the script immediately when + # system tests fail would make checking the contents of the junit.xml + # file impossible (GitLab Runner uses "set -o pipefail"). + - RET=0 - > - "$PYTEST" --setup-only --junit-xml="$CI_PROJECT_DIR"/junit.xml -n "${TEST_PARALLEL_JOBS:-1}" + "$PYTEST" --setup-only --junit-xml="$CI_PROJECT_DIR"/junit.xml -n "${TEST_PARALLEL_JOBS:-1}" || RET=1 + - *check_for_junit_xml + - (exit $RET) needs: - job: ci-variables artifacts: true