天青管道-如何根据条件任务结果中断/取消发布

时间:2019-04-28 14:38:49

标签: azure-devops azure-pipelines azure-pipelines-release-pipeline azure-pipelines-build-task

我有一个由CI触发的发布管道,我想在其中推送新版本的nuget软件包,如果该版本尚不存在

为此,我有一个简单的命令行任务,该任务检查nuget.org上是否存在该nuget并将结果存储在环境变量中。

然后我可以为后续步骤设置条件,该条件仅在该值变量为true时才执行该步骤。

enter image description here

这一切正常,但是我想知道如何简单地停止发布过程并跳过所有随后的步骤,而又不一一设置其条件。

此外,如何通过任务将构建状态设置为“已取消”?

1 个答案:

答案 0 :(得分:0)

您可以使用PowerShell任务取消当前的Build或Release:

 写入主机“ ## vso [task.setvariable variable = agent.jobstatus;]已取消”
写主机“ ## vso [task.complete result =已取消;]完成”
 

因此,在发布管道中添加具有上述代码的Powershell任务,并在自定义条件下将其配置为仅在您不想上传NuGet时才运行,在此任务之后,所有其后的任务都将被取消。 / p>

PS -状态将为“成功”,但实际上,构建/发布将被取消。

如果要查看“已取消”状态,则需要使用Rest API,请检查 PowerShell脚本。