当我的 Bitbucket 存储库提交对非代码文件的更改时,我的 azure devops 管道被触发

My azure devops pipeline is triggered when my Bitbucket repo commits changes to non-code files

我不确定我的问题是否足够清楚。这是一些上下文。我们的源代码在 bitbucket 中。我创建了一个 Azure DevOps 管道,它连接到 bitbucket 并提取源代码并构建一个 docker 图像并将其推送到外部注册表。管道设置为在将更改提交到 bitbucket 存储库时触发。这一切都有效。我遇到的问题是,如果我的更改不影响构建,管道也会触发。例如,如果我对 docker-compose 文件进行更改,这不会影响构建,因此它不应该触发 Azure DevOps 中的管道,但它会。

这附近有没有?

更新:Jane Ma-MSFT 是正确的,使用路径过滤器解决了我的问题。我添加了一个路径过滤器 Include Path=/src 并且它起作用了。

可以找到更多信息 Using Path filters in Build definition in Azure DevOps. It is from 2018 but still relevant. This link Multiple Project Deployment with Azure DevOps,展示了当您有一个包含共享项目的多项目 Repo 时如何使用路径过滤器。

在 Azure DevOps 中,每当您将更新推送到指定分支或推送指定标签时,触发器都会导致管道 运行。即更新是否影响构建无关紧要,只要您进行更新,管道就会被触发。

为避免这种情况,您可以排除某些路径。例如:

trigger:
  paths:
    include:
    - docs
    exclude:
    - docs/README.md