Skip to content

Commit

Permalink
run-make-check.sh: let ctest generate XML output
Browse files Browse the repository at this point in the history
to enable XUnit plugin of jenkins to consume the ctest output and
publish it in the dashboard, we need to

* let ctest generate XML output instead of plain text output
* do not fail the test if any test case fails. this allows the publisher
  to do its job by checking the XML output.
* prevent ctest from compressing the output. see
  https://issues.jenkins.io/browse/JENKINS-21737

Signed-off-by: Kefu Chai <[email protected]>
  • Loading branch information
tchaikov committed Mar 25, 2021
1 parent c420ded commit 48ba399
Showing 1 changed file with 14 additions and 3 deletions.
17 changes: 14 additions & 3 deletions run-make-check.sh
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,10 @@ source src/script/run-make.sh

set -e

function in_jenkins() {
test -n "$JENKINS_HOME"
}

function run() {
# to prevent OSD EMFILE death on tests, make sure ulimit >= 1024
$DRY_RUN ulimit -n $(ulimit -Hn)
Expand All @@ -39,9 +43,16 @@ function run() {
$DRY_RUN sudo /sbin/sysctl -q -w fs.aio-max-nr=$((65536 * $(nproc)))

CHECK_MAKEOPTS=${CHECK_MAKEOPTS:-$DEFAULT_MAKEOPTS}
if ! $DRY_RUN ctest $CHECK_MAKEOPTS --output-on-failure; then
rm -fr ${TMPDIR:-/tmp}/ceph-asok.*
return 1
if in_jenkins; then
if ! ctest $CHECK_MAKEOPTS --no-compress-output --output-on-failure -T Test; then
# do not return failure, as the jenkins publisher will take care of this
rm -fr ${TMPDIR:-/tmp}/ceph-asok.*
fi
else
if ! $DRY_RUN ctest $CHECK_MAKEOPTS --output-on-failure; then
rm -fr ${TMPDIR:-/tmp}/ceph-asok.*
return 1
fi
fi
}

Expand Down

0 comments on commit 48ba399

Please sign in to comment.