在另一个管道完成时触发构建管道(在同一分支上)

时间:2020-06-21 12:35:39

标签: continuous-integration devops azure-devops-server-2019

在我们的Azure DevOps Server 2019中,我们希望在完成另一个构建管道时触发构建管道。触发的版本应该使用与触发版本相同的源分支。

根据documentation,这不适用于经典版本或经典触发器定义,但在触发版本的YAML定义中:

build.yaml:

# define triggering build as resource
resources:
  pipelines:
    - pipeline: ResourceName
      source: TriggeringBuildPipelineName
      trigger:
        branches:
          - '*'

# another ci build trigger
trigger:
  branches:
    include:
      - '*'
  paths:
    include:
      - SubFoldder

pool:
  name: Default

在创建这样的管道时,trigger资源下的pipeline元素会带有下划线,并且编辑器指出trigger在{内不应该是 {1}}。

保存定义并尝试运行它时,它将失败,并显示以下错误:

/SubFolder/build.yaml(第6行,第7行):意外值“触发”

(其中“第6行”是pipeline定义中的trigger行)。

所以我的问题是:如何正确声明使用同一源分支在另一个构建管道完成时启动构建管道的触发器?由于链接的文档实际上对此做了解释,因此问题是:我错过了什么,为什么resources在这一点上是意外的?


更新:我刚刚找到this。因此,似乎他们尚未承诺并记录为正在运行的主要功能之一,甚至我们尚未转换为DevOps的主要功能之一。 :(

1 个答案:

答案 0 :(得分:1)

每隔几周会更新一次云托管版本Azure DevOps Services。然后汇总这些更新,并通过对本地Azure DevOps Server和TFS进行季度更新来提供这些更新。因此,所有功能都首先在Azure DevOps Service中发布。

发布功能的时间表和该功能计划的时间表可以在以下位置找到- Azure DevOps Feature Timeline

您可以选择直接使用云版本的Azure DevOps服务,或使用Azure DevOps Server监视上述功能时间表上的最新更新。抱歉给您带来不便。