为合并请求选择正确的构建工件,以结合4种不同的构建工件

时间:2019-04-19 22:03:01

标签: azure-devops azure-pipelines azure-pipelines-release-pipeline azure-artifacts build-triggers

因此,我将应用程序划分为4个不同的存储库,每个存储库都有自己的Azure Pipeline构建。但是,这4个构建的工件是在一个版本中(部署到一个应用程序中)部署的。

在一个回购中的开发分支上的签入(拉请求合并)上,将为该回购开始构建。完成此构建后,将根据另一个存储库中的“来自带有标记的构建管道默认分支中的最新版本”的最新完成的构建工件+ 3个较旧的工件来触发发布。因此,始终都是来自development(dev)分支的最新版本。

现在,我们还希望为在不同存储库中创建的每个拉取请求部署环境,以便我们的业务可以测试拉取请求。

我已经完成了发布管道(环境的实际部署),但是不确定如何正确选择工件。在pull request分支上构建之后,我需要使用触发该构建的pull request工件以及其他3个构建中的最新dev分支工件来开始发布。

我可以手动启动一个新版本,默认情况下它会选择所有dev工件,但是我可以手动为PR分支选择正确的工件并开始正确的部署。但我想自动化(触发)这一点。

如何配置此自动触发器?我可以使用标签吗?还是我以错误的方式考虑这个问题?

修改

我最终通过使用具有不同工件过滤器的4个不同阶段进行设置。每个工件的舞台。对于该工件,我们允许dev_ *,所有其他工件都必须来自dev_。这样,为每个工件触发器触发正确的阶段,为其他工件选择功能分支和开发分支。

这不是理想的解决方案,因为它确实需要一些代码重复,但是通过使用任务组,我已经能够将其最小化。但是目前我还没有更好的解决方案。 3 stages in Azure pipelines

0 个答案:

没有答案