我的代码存储库位于GitHub上,并且我的管道在Azure DevOps中配置。
我需要让Azure DevOps检查并过滤提交给我的GitHub存储库的每个拉取请求,并限制要合并的拉取请求,直到它通过Azure DevOps构建为止。似乎Azure DevOps确实支持这一点。但是,没有相关文档或教程。如何实现?
答案 0 :(得分:2)
您需要为分支机构定义构建验证策略(取自Improve code quality with branch policies > Build Validation:
- 从“构建定义”下拉列表中选择构建定义。
- 选择触发器的类型-自动(无论何时更新源分支)或手动。
- 配置策略要求。如果设置为“必需”,则构建必须成功完成才能完成拉取请求。选择“可选”以提供有关构建失败的通知,但仍允许拉取请求完成。
- 设置构建到期时间,以确保对受保护分支的更新不会中断打开的请求请求中的更改。
- 立即更新
branch name
:此选项将拉取请求中的构建策略状态设置为在更新受保护分支时失败。您必须重新排队构建以刷新构建状态。此设置可确保即使受保护的分支发生更改,拉取请求中的更改也会成功构建。此选项最适合具有重要分支且变更量较小的团队。在繁忙的开发分支中工作的团队可能会发现,每次更新受保护的分支时,等待构建完成都会造成破坏。- 之后
n
小时数branch name
已更新:此选项将在如果传递的版本早于输入的阈值,则受保护的分支会更新。此选项是在受保护分支更新时始终需要构建与从不要求构建之间的折衷方案。当您的受保护分支频繁更新时,此选择非常适合减少构建数量。- 从不:对受保护分支的更新不会更改策略状态。这样可以减少分支的构建数量,但在关闭最近未更新的请求请求时可能会导致问题。
- 为此构建策略选择一个可选的显示名称,该名称用于在“分支策略”页面上标识该策略。如果未指定显示名称,则使用内部定义名称。
配置完成后,来自 GitHub 的提取请求应触发 Azure DevOps 中的构建。
希望有帮助!