如果违反规则,使TeamCity FxCop生成步骤导致生成失败

如果违反规则,使TeamCity FxCop生成步骤导致生成失败,teamcity,fxcop,Teamcity,Fxcop,我的构建配置中有两个构建步骤:VisualStudio(sln)构建运行程序,然后是FxCop构建运行程序。我正在使用TeamCity 6.0.1和FxCop 10.0 [14:39:22]: [Step 2/2] Importing inspection results [14:39:22]: [Step 2/2] Errors limit reached: found 8 errors, limit 0 [14:39:22]: [Step 2/2] ##teamcity[buildStatu

我的构建配置中有两个构建步骤:VisualStudio(sln)构建运行程序,然后是FxCop构建运行程序。我正在使用TeamCity 6.0.1和FxCop 10.0

[14:39:22]: [Step 2/2] Importing inspection results
[14:39:22]: [Step 2/2] Errors limit reached: found 8 errors, limit 0
[14:39:22]: [Step 2/2] ##teamcity[buildStatus status='FAILURE' text='Errors: 8, warnings: 1']
TeamCity中的FxCop运行程序开箱即用,似乎只报告违反规则的情况,并在代码检查选项卡上生成报告。我想确保,如果发生任何冲突,构建步骤将失败,从而导致整个构建失败


有没有办法做到这一点?

请将FxCop生成步骤配置中的错误限制属性设置为0。如果至少存在一个分析错误,则应中断生成

此外,还有一个类似的警告限制属性。如果不希望在警告级别允许任何规则冲突,请在此字段中同时插入值0。如果要允许规则属性BreaksBuild==False的规则冲突,请将此属性保留为空

我已经用TeamCity 6.0(build 15772)和FxCop 10.0尝试过了

[14:39:22]: [Step 2/2] Importing inspection results
[14:39:22]: [Step 2/2] Errors limit reached: found 8 errors, limit 0
[14:39:22]: [Step 2/2] ##teamcity[buildStatus status='FAILURE' text='Errors: 8, warnings: 1']

在7.0版EAP中,构建配置=>构建失败条件=>添加构建失败条件中有一个特殊的“构建失败条件”,例如“如果检查错误数超过30,则构建失败”

根据我的经验,“失败分析错误”标志仅确保如果FxCop有加载错误,例如,未能加载引用的程序集,则生成步骤会导致生成失败。当违反规则时,该标志不会导致生成失败。对不起,你是对的。“分析错误失败”标志不是您想要的。我试图给出一个更好的答案。我一直在通过MSBuild运行程序运行FxCop。使用一些XPath,您可以查询结果XML文件,并选择是否相应地中断它。有关报告解析,请参见。有关TeamCity中的服务消息,请参阅。这听起来很有希望,这将是我在更高级的构建配置中经常使用的功能。