如何通过Azure Data Factory管道禁用Azure DevOps Release 2的自动触发
从Azure Data Factory管道禁用Azure DevOps Release 2自动触发的实现方案
你可以通过在ADF的IF条件分支中调用Azure DevOps REST API的方式实现需求,具体操作步骤如下:
前置准备
- 登录Azure DevOps,创建具备发布管理读取、写入、执行权限的个人访问令牌(PAT),保存生成的令牌字符串
- 记录以下参数备用:DevOps组织名称、项目名称、Release 2的发布定义ID(可在Release 2的页面URL中提取,格式为
https://dev.azure.com/{组织名}/{项目名}/_release?definitionId={定义ID})
ADF管道配置
在你现有的IF条件活动的「行数不匹配」分支中,按如下配置操作:
- 先添加一个Web活动,用于获取Release 2的最新定义内容:
- 请求方法:
GET - 请求URL:
https://vsrm.dev.azure.com/{组织名}/{项目名}/_apis/release/definitions/{Release2定义ID}?api-version=7.0 - 身份验证选择「基本认证」,用户名可任意填写,密码填写之前生成的PAT
- 该活动的输出会返回Release 2的完整定义,包含最新的版本号
revision
- 请求方法:
- 再添加第二个Web活动,用于更新Release 2的触发状态:
- 请求方法:
PUT - 请求URL和认证方式和上一步一致
- 请求头添加:
Content-Type: application/json - 请求体基于第一步获取的定义内容修改,找到对应Release 1完成触发的
releaseCompletion类型触发器,将其isEnabled属性设置为false,将修改后的完整JSON填入请求体即可
- 请求方法:
- 按需在该分支添加ADF自带的发送邮件活动,完成行数不匹配的通知推送
如果需要在行数匹配时恢复Release 2的自动触发,只需要在IF条件的「行数一致」分支中,重复上述第二步的操作,将isEnabled属性设置为true即可。
现有架构参考


注意事项
- PAT需要注意配置有效期,到期前及时更新,避免API调用失效
- 建议先在接口测试工具中验证API调用逻辑,验证通过后再配置到ADF管道中
- 如果不需要保留Release 2的触发配置,也可以直接调用API删除对应触发规则,按需调整即可
内容的提问来源于stack exchange,提问作者Qayyum Halid
相关产品推荐
相关产品推荐

