声纳跑步者Stepwe试图在Teamcity中为项目(模块)设置声纳。我们有以下构建步骤:1)Nuget安装2)Visual Studio SLN3)检查(.NET)4)Sonar Runner
在Sonar Runner步骤中,它无法掌握该文件。查看图像2找不到xml文件
请指向我指向如何使其选择XML文件的正确方向。
这里的主要技巧是将报告XML传递给Sonarqube Runner-可以使用/output
Resharper选项完成(请参见下面的步骤#2)。尽管还有更多的事情可能会破坏您的一天,所以我撰写了一个完整的程序。
-
首先,确保正确配置了Sonarqube服务器以接受Resharper数据。您需要安装的Resharper和C#插件以及使用Resmanper规则配置的质量配置文件。要检查配置,我建议按照Resharper插件文档中所述手动运行分析。
-
然后配置您的检查(.NET)Teamcity构建步骤,以在一个知名的位置创建报告XML:打开高级选项和字段中"附加InspectCode.exe.exe参数:"添加
/output=%system.teamcity.build.tempDir%inspectReport.xml
(或任何其他位置)。重要!步骤将失败,因为它期望在默认位置进行报告(请参阅YouTrack上的问题)。所有后续步骤都需要Execute step: if some of the previous steps failed
选项才能运行 -
在Sonarqube Runner中打开高级选项,并向"附加参数:"字段添加此2行(用真实路径替换
pathToSolutionFile
):-Dsonar.resharper.cs.reportPath=%system.teamcity.build.tempDir%inspectReport.xml -Dsonar.resharper.solutionFile=pathToSolutionFile
-
最终在TeamCity UI中查看报告报告,还添加了一个新的命令行构建步骤:
echo "##teamcity[importData path='%system.teamcity.build.tempDir%inspect.xml' type='ReSharperInspectCode']"