我想在workItem State更改为“Closed”时触发管道。为了处理此问题,我尝试了以下步骤作为触发管道的要求:
1.定义一个“Incoming Service Connection”,使web hook url post可用于管道。
1.定义一个Web钩子(设置所需的事件设置),并将URL设置为:https://{org}/defaultcollection/{project}/_apis/public/distributedtask/webhooks/UpdateWorkItemState?api-version=7.0
,其中UpdateWorkItemState是上一步中定义的服务连接中的Web钩子名称。
但是在测试Web Hook时遇到了404 not found错误。
入站业务连接定义:
的数据
Web Hook定义:
的
测试窗口:
的
1条答案
按热度按时间yc0p9oo01#
我可以用你分享的URL重现
404
问题。你似乎一直在使用错误的URL。根据document,URL中没有Project
,这也省去了我们添加认证令牌的麻烦。x1c 0d1x的数据
为了避免其他错误的配置,通过WebHook触发管道,我分享了我的示例如下。希望信息可以帮助。
1.对于Azure DevOps Server,我使用的URL如下,URL中没有
Project
;字符串
对于Azure DevOps Service,URL应该是;
型
1.上述URL中的“WebHookName”值应用于
Incoming WebHook
服务连接;的
1.在引用传入WebHook服务连接的YAML管道中添加
webhook
资源,该资源将侦听请求;型
1.另外请注意,只有管道default分支的YAML文件中定义的
webhook
资源会监听请求;也就是说,如果webhook
资源是在non-default分支的YAML文件中定义的,管道将不会被触发,我们将得到一个失败的webhook请求历史记录。