首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Azure DevOps -管道触发管道

Azure DevOps -管道触发管道
EN

Stack Overflow用户
提问于 2022-02-10 15:52:28
回答 1查看 431关注 0票数 1

和我之前的许多人一样,我很难在Azure DevOps中配置管道触发器。

背景:

  • 本组织的单一项目
  • 三个分支:主、基础设施、应用--这些分支是相互独立的。他们也从来没有合并成主。

我有一个部署两个的管道。此管道的YAML文件位于基础设施分支中。手动和计划构建的默认分支设置为基础设施。然后我有两个管道,每个管道将一个不同的应用程序部署到App。这些管道的YAML位于应用程序分支中。手动和计划构建的默认分支设置为Application。

仅凭一己之力,这些管道就可以正常工作了。然而,我试图实现的是在achieve管道完成后触发App管道。无论我尝试哪种组合设置,我都无法让它发挥作用。

这是目前YAML的第n版中的样子:

代码语言:javascript
复制
name: 'deploy-webapp-002'
pool:
  vmImage: windows-latest

resources:
  pipelines:
  - pipeline: 'Deploy App Services'   # Internal name of the source pipeline, used elsewhere within this YAML 
                            # e.g. to reference published artifacts
    source: deploy-appservices # Azure Pipelines name of the source pipeline referenced
    project: HomeLab # Required only if the source pipeline is in another project
    trigger:
      branches:
        include:
        - Infrastructure
        - Application

pr: none
trigger: none

有可能做我想做的事吗?如果是,应该在YAML的参考资料/管道部分中指定哪些设置,以及手动和计划构建的默认分支对于每个管道应该是什么样的?

EN

回答 1

Stack Overflow用户

发布于 2022-02-11 03:18:24

当我将YAML文件分别放在两个分支中并设置默认分支时,我可以再现相同的问题。

请参阅以下文档:定义管道资源

定义资源触发器时,如果它的管道资源与当前管道来自同一个存储库(例如self),则触发遵循引发事件的同一分支并提交。但是,如果管道资源来自不同的存储库,则当前管道将在self存储库的默认分支上触发。

在你的例子中,你使用的是同样的回购。因此,触发遵循引发事件的同一分支和提交。

要解决此问题,需要将应用程序分支中的YAML文件复制到基础设施分支。

另一方面,您也可以尝试在UI上手动设置生成完成触发器。

例如:

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71068167

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档