将SonarQube与TeamCity和C#/ .NET一起使用

时间:2015-10-19 13:38:40

标签: msbuild sonarqube teamcity sonarqube-msbuild-runner

我们使用TeamCity作为构建服务器 - 如何设置TeamCity为C#/ .NET解决方案运行SonarQube分析?

我认为我们需要执行MSBuild运行器作为命令行任务,因为TeamCity SonarQube运行器不会调用MSBuild SonarQube运行器。

(如果 http://docs.sonarqube.org/display/PLUG/C%23+Plugin 描述了这种情况会很棒。)

修改

原始帖子中的网址已更改。正确的链接是here

2 个答案:

答案 0 :(得分:4)

你是对的:MSBuild SonarQube Runner的构建步骤/任务可以直接用于Team Foundation Server 2015(很快就是Jenkins) - 但不适用于TeamCity。您确实需要使用命令行步骤/任务来手动调用MSBuild SonarQube Runner开始和结束阶段,以及介于两者之间的MSBuild。

从那里开始,实际的配置和用法与命令行场景相同,这就是为什么TeamCity没有自己的文档。

答案 1 :(得分:3)

以下是我通过构建任务运行此操作的方法

  1. 将以下命令作为.cmd文件放在解决方案根目录

    cd %system.agent.home.dir%
    C:\sonarqube\bin\MSBuild.SonarQube.Runner.exe begin /key:MyKey /name:MyProjectName /version:1
    "C:\Program Files (x86)\MSBuild\14.0\Bin\msbuild.exe" MySolution.sln /t:Rebuild 
    C:\sonarqube\bin\MSBuild.SonarQube.Runner.exe end
    
  2. 创建"命令" TeamCity中的任务并执行.cmd文件