代码之家  ›  专栏  ›  技术社区  ›  NealR

资源>Azure DevOps yaml管道中的存储库触发器未触发,默认触发器未禁用

  •  0
  • NealR  · 技术社区  · 4 年前

    我在我们的系统中设置了触发器 azure-pipelines.yml 如下所示:

    1. 这个 scriptsconn 表示与默认值的连接/ self 包含部署管道yaml的repo。

    2. 这个 serviceconn 表示我们正在使用模板和发布任务构建和部署的微服务仓库。

    我们有多个具有类似构建管道的微服务,因此这种方法试图减少更新这些步骤所需的工作量。

    现在我们遇到的问题有两方面:

    1. 无论我们在 scriptsconn 资源->repositories部分列出了repo中每个分支的每次提交的构建触发器。

    2. 无论我们如何配置触发器 服务conn 我们无法为任何提交、创建PR或合并PR触发构建。

    根据下面的链接,这种配置应该相当直接。有人能指出我们犯了什么错误吗?

    https://github.com/microsoft/azure-pipelines-yaml/blob/master/design/pipeline-triggers.md#repositories

    resources:
      repositories:
        - repository: scriptsconn
          type: bitbucket
          endpoint: BitbucketAzurePipelines
          name: $(scripts.name)
          ref: $(scripts.branch)
          trigger:
            - develop
        - repository: serviceconn
          type: bitbucket
          endpoint: BitbucketAzurePipelines
          name: (service.name)
          ref: $(service.branch)
          trigger:
            - develop
          pr:
            branches:
            - develop
    
    
    variables:
      - name: service.path
        value: $(Agent.BuildDirectory)/s/$(service.name)
      - name: scripts.path
        value: $(Agent.BuildDirectory)/s/$(scripts.name)
      - name: scripts.output
        value: $(scripts.path)/$(release.folder)/$(release.filename)
      - group: DeploymentScriptVariables.Dev
    
    stages:
    - stage: Build
      displayName: Build and push an image
      jobs:  
      - job: Build
        displayName: Build
        pool:
          name: 'Self Hosted 1804'
        steps:   
        - checkout: scriptsconn
        - checkout: serviceconn
    
    0 回复  |  直到 4 年前
        1
  •  0
  •   Eric Smith    4 年前

    您链接到的文档实际上是 design document 。因此,可能该页面上的所有内容都没有实现。在设计文档中,我也看到了这一行:

    但是,目前尚未在存储库资源上启用触发器。因此,我们将保持当前的行为,在YAML的下一个版本中,我们将默认启用触发器。

    当前关于YAML模式的文档似乎表明触发器不受支持 Repository Resources yet .

    仅供参考,您可以在此网址上看到当前支持的YAML模式。

    https://dev.azure.com/{organization}/_apis/distributedtask/yamlschema?api-version=5.1

    enter image description here

    我不是百分之百确定你想要什么 template wise 一般建议,如果你使用可重用的内容模板工作流,你可以从每个微服务存储库中的azure-pipelines.yml文件触发,使用模板中的可重用步骤。希望这能有所帮助!