首页 > 解决方案 > 从子管道发布状态检查

问题描述

我们有一个“父”管道,它编译一些源代码并生成另一个“子”管道所需的工件。

“父” repo master 分支具有配置为在创建拉取请求时运行“父”管道的构建验证。就像一个简单的门,如果代码不会编译,你将无法合并到 master。

现在我想添加“子”管道结果以充当类似于上面的另一个门。

首先,我在想我可以像我们对“父”管道所做的一样作为构建验证步骤。但由于它依赖于从“父”管道创建的人工制品,因此会很棘手,因此两个管道可能会同时被触发。

我是否应该将“子”管道中的状态发布到拉取请求状态检查变量?我该怎么做,或者您有其他解决方案吗?

标签: azureazure-devopsazure-pipelinesazure-devops-rest-api

解决方案


作为一种解决方法,我们可以将构建完成触发器设置为在父管道完成后自动运行子管道。

可以在拉取请求中显示的构建状态由“构建验证”集决定。比如你只在“Build Validation”中设置了child pipeline,那么pr中只会显示child的状态。但是因为设置了“构建完成触发器”,所以当拉取请求中child的状态为成功时,就意味着parent也成功了。

此外,您可以将“子”管道的构建验证设置为手动触发。这样虽然不能实现完全自动化,但是可以满足在pr中检查两条流水线的状态以及两条流水线的执行顺序的需要。

在此处输入图像描述


推荐阅读