我们有一个生成变更日志的管道,一旦使用目标
main
创建了 PR,我们希望在 DevOps 构建验证中执行它。
这实际上不起作用,因为一旦管道运行,它就会创建提交并再次重新启动构建验证管道。
最佳实践是什么?是否有可能找到一种自动生成变更日志的方法?
为main
分支的分支策略的“Build Validation”设置管道后,管道将在以下场景下自动触发:
main
。main
。如果您希望仅当使用目标分支创建的新 PR 为
main
时才触发管道,您可以考虑在管道中使用webhooks资源,而不是将其设置为“Build Validation”:
转到“项目设置”>“服务连接”以创建传入WebHook服务连接。设置自定义的“WebHook名称”(例如,
WebHookTrigger
)和“服务连接名称”(例如,WebHookConnection
)。
将您的 Azure DevOps 组织名称和 webHook 名称填写到“
https://dev.azure.com/<ADO Organization>/_apis/public/distributedtask/webhooks/<WebHook Name>?api-version=6.0-preview
”中以获取请求 URL。例如。
https://dev.azure.com/myOrg/_apis/public/distributedtask/webhooks/WebHookTrigger?api-version=6.0-preview
转到“项目设置”>“Service Hooks”创建 Web Hook。
Pull request created
”作为触发事件,选择对应的Repository,选择main
作为目标分支。在管道中,定义一个 webhooks 资源,如下所示。
connection
的值应该是上面创建的 Incoming WebHook 服务连接的名称。
resources:
webhooks:
- webhook: resWebHook
connection: WebHookConnection
. . .