azure - 针对具有特定源分支的 master 的拉取请求不会触发 Azure 管道

标签 azure github azure-devops azure-pipelines

我正在尝试编写一个管道来构建镜像并部署到 Azure 上托管的测试环境。我的代码库位于 GitHub 上。在尝试从源分支针对目标分支的拉取请求触发管道时,我面临一个问题,即管道不会为 PR 触发,但在我的其他条件下运行良好,例如推送到开发或掌握.

PR触发的条件如下:

and(succeeded(), eq(variables['Build.Reason'], 'PullRequest'), startsWith(variables['System.PullRequest.SourceBranch'], 'release/'), eq(variables['System.PullRequest.TargetBranch'], 'master'))

yaml文件中的触发器如下所示:

trigger:
  branches:
    include:
      - develop
      - master
  paths:
    exclude:
      - k8s/*
      - src/VERSION
      - src/package.json

pr:
  - master

我在这里遗漏了什么吗?

最佳答案

有两种情况:

<小时/>

场景 1:创建拉取请求时触发了管道,但具有您显示的条件的阶段/作业/任务未运行。

那么问题应该与条件有关,而不是触发器。

我已经测试并确认您的情况是正确的。因此,可能不是条件符号,而是其他原因导致您的任务无法运行。

以下是故障排除建议:

转到构建日志,单击跳过的阶段/作业/任务。您会发现条件与实际值之间的比较。从这里,您可以判断哪部分条件导致您的任务无法运行。

<小时/>

场景 2:创建拉取请求时未触发管道。

那么问题应该与触发器有关,而不是与条件有关。

请选择以下文档,根据您的案例获取详细的故障排除建议:

  1. I just created a new YAML pipeline with CI/PR triggers, but the pipeline is not being triggered.

  2. My CI or PR triggers have been working fine. But, they stopped working now.

关于azure - 针对具有特定源分支的 master 的拉取请求不会触发 Azure 管道,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73620466/

相关文章:

PowerShell 检查 Azure 存储容器是否存在

c# - azure Blob : Get Block List in C#

azure - 如何在 Azure DevOps 中更改自定义版本名称?

Azure ADLSGEN2 - API 错误 400 - DatalakeStorageException 请求 URI 无效

node.js - 跨多个 git repo 共享一个文件以供多个用户更新

git - 如何在 git 中将本地更改与远程存储库上的更改集成?

git - 如何检查远程 git 存储库 URL 的有效性?

azure-devops - Azure Build Pipelines 在同一解决方案中发布多个 Web 应用程序

rest - 如何将最后一次测试运行 ID 从 TFS 获取到我的 powershell 脚本

azure - 尝试在 Azure DevOps 管道 shell 中运行 "InvalidSignatureException"命令时获取 "aws ecr-get-login-password"