Azure devops Azure DevOps发布管道是否由所有(而不是任何)多个工件的存在触发?

Azure devops Azure DevOps发布管道是否由所有(而不是任何)多个工件的存在触发?,azure-devops,Azure Devops,Azure DevOps发布管道允许我指定多个输入工件,但自动触发只发生在主工件上。有没有一种方法可以对N个输入工件执行“wait all”类型的操作,以便只有当每个工件都有一个与某个指定值匹配的可用版本时,我的发布管道才会启动 例如,假设我在一个repo中做了一个commit M,它有多个不同的CI作业a和B,这两个作业占用的时间非常不同。一个CI作业(A)在几分钟内创建一个NuGet包作为工件,另一个CI作业(B)在几小时内创建VM映像。我想要一个发布管道,它将使用NuGet包和VM映像作为

Azure DevOps发布管道允许我指定多个输入工件,但自动触发只发生在主工件上。有没有一种方法可以对N个输入工件执行“wait all”类型的操作,以便只有当每个工件都有一个与某个指定值匹配的可用版本时,我的发布管道才会启动

例如,假设我在一个repo中做了一个commit M,它有多个不同的CI作业a和B,这两个作业占用的时间非常不同。一个CI作业(A)在几分钟内创建一个NuGet包作为工件,另一个CI作业(B)在几小时内创建VM映像。我想要一个发布管道,它将使用NuGet包和VM映像作为输入。但是如果我只是在发布管道中使用最新版本的A和B作为输入工件,并在主工件(A或B)上使用CI触发器然后,当发布触发时,它可能使用不匹配的工件版本,因为来自10个不同提交的10个NuGet包在我获得其他CI管道生成的2个VM映像之前就完成了。我想也许构建/工件标记可以解决这个问题,这样我的发行版就可以等待所有具有相同标记的工件,但我不能在构建/工件标记过滤器中使用变量,这使得它不适合任何类型的自动计划/触发


对于这种类型的工作流,这是一种好模式吗?

对于这个问题,根据您的工作流,恐怕不可能实现完全自动化的发布。启用持续部署触发器将在每次新版本可用时创建新版本。因为这两个工件不是同时生成的,所以这两个匹配工件不能用作自动发布中的源

为了在发布中使用特定工件作为源,我们通常在工件中指定版本。但这无法实现连续部署。一种方法是合并作业A和作业B以生成工件,这样您就不必担心工件的相应问题,但根据您的实际情况,我不确定这是否可行

对N个输入工件执行“wait all”类型操作,以便 管道仅在每个工件都有一个可用的版本时启动 匹配某个指定的值


除了否定的答案,我认为你想要的是一个好主意!所以我在DC论坛上发布了一个功能请求。您可以投票表决该建议单,并在那里分享您的评论。如果产品团队查看,他们将提供更新。感谢您帮助我们构建更好的Azure DevOps。

对于这个问题,基于您的工作流程,恐怕不可能实现完全自动化的发布。启用持续部署触发器将在每次新版本可用时创建新版本。因为这两个工件不是同时生成的,所以这两个匹配工件不能用作自动发布中的源

为了在发布中使用特定工件作为源,我们通常在工件中指定版本。但这无法实现连续部署。一种方法是合并作业A和作业B以生成工件,这样您就不必担心工件的相应问题,但根据您的实际情况,我不确定这是否可行

对N个输入工件执行“wait all”类型操作,以便 管道仅在每个工件都有一个可用的版本时启动 匹配某个指定的值


除了否定的答案,我认为你想要的是一个好主意!所以我在DC论坛上发布了一个功能请求。您可以投票表决该建议单,并在那里分享您的评论。如果产品团队查看,他们将提供更新。感谢您帮助我们构建一个更好的Azure DevOps。

好几天没有收到您的回复,请您分享有关此问题的最新信息好吗?如果您有任何问题,请随时在此处分享。几天内未收到您的回复,请您分享有关此问题的最新信息?如果您有任何问题,请随时在这里分享