TFS构建运行任务的自定义条件 - 检查特定的先前任务是否失败

时间:2018-05-15 13:39:58

标签: tfs tfsbuild

TFS构建允许指定运行任务的条件:reference

我想要定义的条件是:特定任务[通过名称或其他方式解决]失败。

这类似于Only when a previous task has failed,但我想指定以前的任务。

查看示例,我看不到任何解决特定任务结果的情况,只有整个构建状态。

有可能吗?任何解决方法来实现这个目标?

1 个答案:

答案 0 :(得分:2)

似乎没有针对此要求的开箱即用的解决方案,但我可以提出(一个丑陋的:))解决方法。

假设您的特定任务(您检查的状态)被称为A。目标是仅在B失败的情况下调用另一个构建任务(假设为A)。

您可以执行以下操作:

  • 定义custom build variable,将其称为task.A.status并设置为success
  • 创建另一个构建任务,例如C并在A之后立即安排;条件是仅在A失败时运行 - 这是
  • 的标准条件
  • 任务C应该只做一件事 - 将task.A.status构建变量设置为'失败'(就像这样,如果我们正在谈论PowerShell:Write-Host "##vso[task.setvariable variable=task.A.status]failure"
  • 最后,任务B计划在Cis conditioned之后的某个时间运行以防task.A.status等于failure,如下所示:{{1} }

我的语法细节可能不正确,但你应该得到一般的想法。希望它有所帮助。