support/misc/gitlab-ci.yml.in: print error log if the runtime test fail
When an error occurs, the gitlab-ci job log doesn't contain any useful information than the name of the failing test: FAIL: test_run (tests.package.test_python_paho_mqtt.TestPythonPahoMQTT) In order to encourage contributors to investigate issues reported by gitlab-ci, we want to print the last lines of the log file (build or runtime). Unfortunately, gitlab-ci job log completely strips lines ending with CRCRLF [1][2]. We have to take a look at the gitlab-ci raw log to see the complete log [3]. To workaround this issue, remove crlf from qemu serial stdio log while printing in the gitlab-ci job log (we don't want to change the log file generated by support/testing/run-tests and saved as artefacts). [1] https://gitlab.com/gitlab-org/gitlab/-/issues/218771 [2] https://gitlab.com/kubu93/buildroot/-/jobs/5492937691 [3] https://gitlab.com/kubu93/buildroot/-/jobs/5492937691/raw Cc: Peter Korsgaard <peter@korsgaard.com> Signed-off-by: Romain Naour <romain.naour@smile.fr> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
parent
8e871ac18b
commit
3503d48897
@ -103,7 +103,16 @@ before_script:
|
||||
script:
|
||||
- TEST_CASE_NAME=${CI_JOB_NAME}
|
||||
- echo "Starting runtime test ${TEST_CASE_NAME}"
|
||||
- ./support/testing/run-tests -o test-output/ -d test-dl/ -k --timeout-multiplier 10 ${TEST_CASE_NAME}
|
||||
- |
|
||||
./support/testing/run-tests -o test-output/ -d test-dl/ -k --timeout-multiplier 10 ${TEST_CASE_NAME} || {
|
||||
echo 'Failed runtime test last output'
|
||||
if [ -f test-output/*-run.log ]; then
|
||||
tail -200 test-output/*-run.log | sed 's/\r\r$//'
|
||||
else
|
||||
tail -200 test-output/*-build.log
|
||||
fi
|
||||
exit 1
|
||||
}
|
||||
retry:
|
||||
max: 2
|
||||
when:
|
||||
|
Loading…
Reference in New Issue
Block a user