强制TFS2010工作流程构建为FAIL而不是PARTIALLY SUCCEED

Ver*_*min 9 workflow build tfs2010

我目前有一个自定义工作流活动,在成功编译解决方案后运行外部进程,如果外部进程失败,则返回ExitCode <> 0.一旦我知道进程失败,我想将构建状态设置为FAIL(正如您将看到的那样,代码是否未编译)所以我添加了一个SetBuildProperties活动,它将Status属性设置为BuildStatus.Failed但这似乎只是导致在构建完成时提供Partially Succeeded构建.

我已经尝试将构建的编译状态设置为在我的自定义活动中失败,这导致了失败的构建,但我真的不想这样做,因为它在解决方案编译时会产生误导.

谁能告诉我如何强制构建失败?(最好不必将编译状态设置为失败!)

谢谢

Dua*_* Le 4

这里发生的情况是,当构建完成时,工作流管理器会将构建状态覆盖为取决于构建过程状态组合的值。在您的情况下,CompilationStatus 为 Succeeded,但自定义活动失败(您将 BuildStatus 设置为 Failed),因此整体状态将为 PartiallySucceeded。

这里唯一的解决方法是将 CompilationStatus 设置为 Failed 或 Unknown,然后构建状态将为 Failed。

我还没有尝试将 CompilationStatus 设置为 Unknown。但如果可以的话,你可以稍后返回并将其更改为“通过”。只是区分真正失败的编译构建的一种方法。

我知道这不是一个很好的解决方法:(

更新:使用 SetBuildProperties 活动将构建状态设置为“失败”,即使编译成功,我也能够使构建失败。