gpt4 book ai didi

azure-devops - 在 Azure Devop 中触发 YAML 管道

转载 作者:行者123 更新时间:2023-12-03 23:47:43 25 4
gpt4 key购买 nike

我是 Azure Devops 中 YAML 构建管道的新手,我正在尝试围绕触发器功能进行思考。困扰我的是我想在不同的分支上使用不同的触发器,但我想使用相同的管道。

可以说我想要

  • 建立在 master 分支上的所有 checkin 上,这应该部署到服务器
  • 每天晚上我都想构建并将开发分支部署到另一台服务器

  • 我很困惑,因为 yaml 文件也被检入了 Git。我读到,如果你有预定的触发器,你也不能有 CI 触发器。

    我需要有两个 .yml 文件吗?一个定义每个?重复所有步骤似乎不酷

    或者我应该在每个分支中拥有相同文件的不同版本?这不会在某个时候合并吗?

    额外问题:如果您在 Developemt 分支上推送构建管道并在 master 上触发会怎样? (呃,我头晕了)

    最佳答案

    Do I need to have two .yml files? One defining each? Seems not cool to repeat all the steps



    经过一段时间的研究,我个人建议你最好用两个 .yml具有不同构建管道的文件。

    直销 问题是关于 master的代码分支和 development分支不是实时同步的。当两个分支上的代码不同时,构建的结果也不同。如果它们在同一个管道中,我们需要 手动 检查构建失败时错误来自哪个分支。这是一件痛苦的事情。

    另一个 问题是我们可以定义 CI triggerScheduled trigger在一个 yaml 文件中,例如:
    trigger: 
    branches:
    include:
    - master


    schedules:
    - cron: "* 10 * * *"
    always: true
    displayName: Daily midnight build (UTC 22:00)
    branches:
    include:
    - Development

    为此,我们需要在 Development 上设置此 yaml分支。如果我们更改 master 分支中的任何代码,它将触发此管道。 然而 ,它只在 Development 上构建代码分公司, 它不包括 master 中更改的代码.所以这个 CI 触发器将毫无意义。

    should I have different version of the same file in each branch? Won´t this get merged at some point?



    个人建议你最好使用不同名称的不同yaml文件。就像你说的,同样的文件在后面的分支合并中容易出现不必要的风险。

    My bonus question was more like: Are you suppose to keep different version of your build pipeline in different branches? I mean if i want to build develop branch each time i push to develop can this trigger be defined in the master branch version of the yaml file?



    答案是肯定的。您可以使用 中的简单语法设置 CI 触发器。大师 yaml 文件的分支版本:
    trigger: 
    branches:
    include:
    - master
    - Development

    使用此设置,每次推送到 develop 分支时都会触发在 yaml 文件的 master 分支版本中定义的构建。

    注意:对于您的额外问题,如果我们在 CI 触发器上面设置,管道将由于 dev 上的持续提交而触发构建。分支。有时我们只是修改了一个readme文件,我们不希望这样的修改触发不必要的构建,解决此类问题的最好方法是使用 PR trigger .

    希望这可以帮助。

    关于azure-devops - 在 Azure Devop 中触发 YAML 管道,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61541723/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com