Azure Devops构建管道:PR设置为无时,CI触发器在PR上不起作用,无法合并到master

时间:2019-11-27 18:46:24

标签: azure azure-devops azure-pipelines build-triggers

当PR合并到主服务器时(仅当更改位于./rel/*路径内时),需要触发CI构建作业,但在创建请求请求(PR)时无需触发CI构建。所以我有如下的触发器配置。

---> 13 df['business_day'] = data_date_range.freq("B")
ApplyTypeError: Unhandled type: str

但是添加trigger: branches: include: - master paths: include: - ./rel/* pr: none # will disable PR builds (but not CI builds) 时,它无法触发CI构建。如果pr: none被删除,则PR和合并到master的作业都会被触发。我只需要job / CI构建就可以在与master的合并中运行。

2 个答案:

答案 0 :(得分:1)

解决了!这现在有效。

trigger:
    branches:
        include:
        - master
    paths:
        include:
        - ./rel/*

pr: none # will disable PR builds (but not CI builds)

您还可以使用来自触发器的经典 azure devops UI 配置/覆盖。

参考:https://docs.microsoft.com/en-us/azure/devops/pipelines/repos/azure-repos-git?view=azure-devops&tabs=classic#ci-triggers

PR trigger

CI trigger

答案 1 :(得分:0)

YAML中的paths过滤器正在查看存储库文件结构中的路径,而不是分支路径。要使其仅在rel分支上触发,请用./rel/*(或正确的值)替换include分支下的master。

我们有一个更为定义的管道,该管道在PR上运行单元测试,然后仅在合并到master分支后才发布软件包。为此,我们将触发器设置为master分支,并对多级管道中的每个阶段使用conditions。还要检查一下。