在完成多个管道 yaml 时触发管道

时间:2021-05-05 15:07:24

标签: azure azure-devops yaml

我有两个不同的管道 A 和 B,需要在管道 A 或管道 B 完成时触发管道 C。请 A 和 B 单独运行,以便管道完成时应触发管道 C

我认为管道 C 中的触发器应该可以工作,但它不会触发

resources:
  pipelines:
    - pipeline: A
      source: A.source
      trigger:
        branches:
          - master
    - pipeline: B
      source: B.Source
      trigger:
        branches:
          - master

1 个答案:

答案 0 :(得分:0)

请仔细检查您的 yaml 文件,确保您已为 source 节点设置了管道 C 的全名,并选择包含该项目的正确分支。确保项目位于 master 分支下。

请不要忘记为 master 分支添加 - include

使用这个:

resources:
  pipelines:
    - pipeline: A
      source: A.source // the full name of the pipeline A
      trigger:
        branches:
         include:
          - master
    - pipeline: B
      source: B.Source // the full name of the pipeline B
      trigger:
        branches:
         include:
          - master

然后,当您运行管道AB时,它会自动触发管道C

我已经在我身边进行了测试,效果很好。

在我这边,我是这样写的:

resources:
 pipelines:
   - pipeline: me
     source: first_repository (2)
     trigger: 
      branches:
       include:
         - master

first_repository (2) 是管道的名称,那么,我运行first_repository (2),并且您应该在first_repository (2) 管道完成后刷新页面。然后你会看到下面的页面。

enter image description here