Generate, check the JUnit reports for the doctest job

Pass it to GitLab for display.
This commit is contained in:
Štěpán Balážik 2026-01-06 16:42:34 +01:00
parent 1a85a27f54
commit 0f2d0daabc

View file

@ -771,13 +771,29 @@ meson-format:
doctest:
<<: *precheck_job
needs: []
# This script needs to: 1) fail if the doctest fails, 2) fail if
# the junit.xml file is broken, 3) produce the junit.xml file even if
# the doctest fails. Therefore, $RET is used to "cache" the
# result of running pytest as interrupting the script immediately when
# a doctest fails would make checking the contents of the junit.xml
# file impossible (GitLab Runner uses "set -o pipefail").
script:
- *configure
- meson compile -C build system-test-init
- *find_python
- *find_pytest
- cd bin/tests/system/isctest
- RET=0
- >
"$PYTEST" --noconftest --doctest-modules
"$PYTEST" --noconftest --doctest-modules --junit-xml="$CI_PROJECT_DIR/junit_doctest.xml" || RET=1
- *git_clone_bind9-qa
- >
"$PYTHON" bind9-qa/ci/postprocess_junit_files.py "$CI_PROJECT_DIR/junit_doctest.xml" --output "$CI_PROJECT_DIR/junit.xml"
- (exit $RET)
artifacts:
reports:
junit:
- junit.xml
pylint:
<<: *precheck_job