Azure DevOps Services |Azure DevOps Server |Azure DevOps Server 2022
拉取请求提供了一种在将代码更改合并到代码库之前查看代码更改的有效方法。 但是,这些更改可能会带来一些问题,若不将应用程序构建并部署到特定环境中,这些问题可能很难发现。 拉取请求触发器使你能够定义部署前必须满足的一组条件。 本文介绍如何使用 Azure Repos 和 GitHub 存储库设置拉取请求触发器,以通过经典发布管道部署管道工件。
先决条件
| 产品 | 要求 |
|---|---|
| Azure DevOps | - Azure DevOps 项目。 - 托管在 Azure Repos 或 GitHub 上的源代码。 如果没有存储库,可以使用 pipelines-dotnet-core 示例应用创建一个。 - 适用于您的存储库的有效 流水线。 - 经典发布管道。 如果您没有经典发布管道,请设置一个经典发布管道。 |
合并请求部署
拉取请求触发器有助于维护更高的代码质量,以更高的信心发布,并在开发周期的早期阶段发现问题。
设置拉取请求部署是一个两个步骤,首先必须设置拉取请求触发器,然后为发布管道设置分支策略 (Azure Repos) 或状态检查 (GitHub)。
1.启用拉取请求触发器
启用拉取请求触发器时,每当拉取请求工作流中提供新项目时,就会创建新版本:
登录到 Azure DevOps 组织,然后导航到项目。
选择 管道>发布,然后选择发布管道定义。
在 “项目 ”部分中,选择 “持续部署触发器 ”图标。
切换 拉取请求触发器 设置以启用它。
从下拉菜单中选择“目标分支”。
若要将应用程序部署到特定阶段,请显式选择加入该阶段。 “ 阶段 ”部分列出了为拉取请求部署启用的阶段。
若要启用阶段的拉取请求的部署,请执行以下操作:
- 选择阶段 的“预部署条件 ”图标。
- 导航到触发器>发布后。
- 切换 拉取请求部署 设置以启用它。
重要
不建议为生产阶段启用自动拉取请求的部署。
2. 设置分支策略
可以使用分支策略来实现在合并拉取请求之前必须满足的条件列表。
登录到 Azure DevOps 组织,然后导航到项目。
选择 Repos>分支 以访问存储库的分支列表。
选择相应分支
...的上下文菜单,然后选择“分支策略”。
选择“添加状态策略”,然后从下拉菜单中选择要检查的状态。 选择与发布定义对应的状态,然后选择“保存”。
重要
发布定义必须至少运行一次,并启用拉取请求触发器才能查看状态列表。 有关更多详细信息,请参阅为外部服务配置分支策略。
添加状态策略后,除非拉取请求具有
succeeded状态,否则用户将无法将更改合并到目标分支。
您可以在“拉取请求概述”页上查看策略的状态。 根据设置,发布状态将显示在 “必需”、“ 可选”或 “状态” 部分下。 每次触发管道时,状态都会更新。