简而言之;我们希望使用构建定义来为Release Management生成工件并检查Pull请求,但不允许后者触发新版本。
我们将Git Repo送料工件的CI构建定义纳入发布管理管道。像许多团队一样,我们也设置了Pull Requests以保护我们的git master。我们希望重新使用我们的CI构建来在合并之前验证Pull请求,但这样做会自动触发我们的发布管道(绕过合并到主控)。
到目前为止,我们一直在通过复制构建来解决这个问题,但感觉很笨拙。查看文档,没有一种明显的方法来过滤发布触发器,或者跳过构建中的发布步骤。我觉得必须避免触发而不重复构建,但我看不到它!
现在没有开箱即用的功能,已经在VSTS用户语音上提交了类似的功能请求,您可以投票:Trigger release definition only for specific branches。
实现此目的的另一种方法是更新发布定义以将其配置为由“手动”触发,然后在构建定义中添加PowerShell脚本任务以检查当前构建的源引用,然后通过VSTS Rest API触发发布。
我不确定这个问题是否过于陈旧有效,但如果您现在使用Azure DevOps(以前称为VSTS),您可以通过使用Control Options: Custom Conditions来完成发布的CI构建任务。文物。
基于构建的refspec触发版本的能力目前不是一种能力。