ctest results not showing in CDash
We've been using ctest for building and testing successfully with CDash in a two-step process (CI). After a larger update of cmake and other sources, we can still see the configure and build results from the first step in CDash, but not the test results from the second step.
I understand from !2405 (merged) that after a call to "Submit", no more results can be added to a run. But the issue talks mostly about ctest scripts, not about using ctest from the command line. Is there a supported way to use CDash with ctest in a multi-step pipeline from the command line (no ctest script)?
When I submit in the first step, configure and build results show but test results never show up. When submitting only in the last step (test), there are absolutely no results in CDash. Does that make sense?
So the first step runs:
cmake -D... <many options> ctest --verbose \ --test-model Experimental \ --test-action Start \ --test-action Configure \ --test-action Build
And the second step runs:
ctest --extra-verbose \ --tests-regex ".*" \ --test-model Experimental \ --test-action Test \ --test-action MemCheck \ --test-action Submit
After that I can see the
Testing/ but no
Test.xml or similar... It seems as if the second invocation does not even pick up the previous one?
This used to work before, am I doing something wrong? Or is there a better way to achieve the same?
On a related note: The reason why we want to stay away from ctest scripting is that we want to keep the "normal" build workflow as original as possible. Usually we run
cmake with many parameters, then
ninja and finally
ctest. For the continuous integration it is quite comfortable to keep that same workflow but only replace
ctest. The scripting always seemed more intrusive because we could not easily pass the cmake parameters to a ctest script(?) Or is a non-intrusive workflow with ctest scripts possible?