Sonar Runner没有在Teamcity中拾取报告XML文件



声纳跑步者Stepwe试图在Teamcity中为项目(模块)设置声纳。我们有以下构建步骤:1)Nuget安装2)Visual Studio SLN3)检查(.NET)4)Sonar Runner

在Sonar Runner步骤中,它无法掌握该文件。查看图像2找不到xml文件

请指向我指向如何使其选择XML文件的正确方向。

这里的主要技巧是将报告XML传递给Sonarqube Runner-可以使用/output Resharper选项完成(请参见下面的步骤#2)。尽管还有更多的事情可能会破坏您的一天,所以我撰写了一个完整的程序。

  1. 首先,确保正确配置了Sonarqube服务器以接受Resharper数据。您需要安装的Resharper和C#插件以及使用Resmanper规则配置的质量配置文件。要检查配置,我建议按照Resharper插件文档中所述手动运行分析。

  2. 然后配置您的检查(.NET)Teamcity构建步骤,以在一个知名的位置创建报告XML:打开高级选项和字段中"附加InspectCode.exe.exe参数:"添加/output=%system.teamcity.build.tempDir%inspectReport.xml(或任何其他位置)。重要!步骤将失败,因为它期望在默认位置进行报告(请参阅YouTrack上的问题)。所有后续步骤都需要Execute step: if some of the previous steps failed选项才能运行

  3. 在Sonarqube Runner中打开高级选项,并向"附加参数:"字段添加此2行(用真实路径替换pathToSolutionFile):

    -Dsonar.resharper.cs.reportPath=%system.teamcity.build.tempDir%inspectReport.xml
    -Dsonar.resharper.solutionFile=pathToSolutionFile
    
  4. 最终在TeamCity UI中查看报告报告,还添加了一个新的命令行构建步骤:

    echo "##teamcity[importData path='%system.teamcity.build.tempDir%inspect.xml' type='ReSharperInspectCode']"
    

最新更新