如何在分析成功后单独调用将JaCoCo报告上传到SonarQube?

How to upload JaCoCo reports to SonarQube in a separate call after the successful analysis?

在我的公司,我们 运行 一些遗留应用程序编译时间太长,并且 post 我们正在使用声纳扫描代码,因此这项工作总共需要大约 3 小时通过单一构建配置中的 teamcity

因此我想到了在单独的配置中进行静态分析的想法,它将并行扫描代码,而另一项工作则进行编译部分,通过这种方式我能够节省一些时间但是 jacoco在构建编译部分生成报告,我想将 jacoco.exec 报告直接注入声纳仪表板,因为声纳执行是分开的。

是否有任何方法可以像 curl rest api 那样在特定项目的声纳仪表板中上传 jacoco 报告?

无法单独推送JaCoCO报告。所有分析数据必须放在一起。

Hence i come up with the idea of static analysis in separate configuration which will scan the code parallely while the other job does the compilation part

不要这样做。 SonarScanner 使用二进制数据和测试结果来执行分析。如果您的应用程序不会被编译,则:

  • 由于缺少数据,扫描器会发现更少的问题
  • 分析将失败(同样,由于缺少数据)

如果过程太长,我建议减少执行SonarScanner的频率(例如主要分支一天一次)。