Lightning talk ABC Bitcoin: Tooling
Andre Pany
andre at s-e-a-p.de
Thu May 9 18:11:57 UTC 2019
Hi,
Unfortunately I had no chance to see the lightning talk of ABC
Bitcoin but want to share my knowledge.
I was also in need to report unit test / coverage / linter
results in a Jenkins Pipeline / SonarQube Server.
Unit test was easy, because unit test framework dunit can export
QUnit compatible XML files. The D LST coverage files I convert
into a Cobertura file and DScanner issues I convert into a
CheckStyle file. Cobertura and CheckStyle are tools from other
languages but they are well supported in Jenkins and their
Jenkins plugins display the affected D source code quite nice.
Despite this work around I created a D issue to make the coverage
DMD file output adaptable via D code.
https://issues.dlang.org/show_bug.cgi?id=18745
Also I created a pull request for DScanner to output the findings
in SonarQube external issue format.
https://github.com/dlang-community/D-Scanner/pull/747a
There is a SonarQube plugin for D but it is not in the official
marketplace and therefore it won't be installed on the central
company server I work for. But SonarQube provides generic
projects for which you can upload generic coverage data, generic
test results and generic findings. You just have provide the data
in the format SonarQube specifies.
There is currently 1 catch for generic coverage and test results.
The file ending .d causes an exception, I filed a bug report and
it will be solved.
There is also some consolidation of the coverage/issue reporter
Jenkins plugins ongoing. The Jenkins developer consolidates the
plugins. I am pretty sure they will support the SonarQube file
formats.
That means if we are able to provide coverage/issues in SonarQube
formats, they will also work in Jenkins plugins.
Kind regards
Andre
More information about the Digitalmars-d
mailing list