GitHub 拥有 GitHub Apps,它基本上是一个 Web 服务,具有 Webhook 并被授予对存储库的选定权限。当给定事件发生时,GitHub 将触发 webhook。
Azure DevOps 有类似的东西吗?我想创建一个在 ADO 事件上触发的服务,并有权对 ADO 存储库执行操作。
此功能可以实现,但可能不像 GitHub 那样简单。
AzDevOps 有通知。您可以在(集合|组织)设置/全局通知下查看所有可捕获事件。现在,它们的主要目的是发送电子邮件,但您也可以创建通知记录以将 SOAP 请求发送到任意端点。 SOAP 通道过去在 Web UI 中公开,但现在仅当您通过 AzDevOps API(.NET 或 REST)创建通知时才可用。在内部一如既往地支持它。
反过来,端点可以通过个人访问令牌(PAT)的魔力做任何需要做的事情。使用您需要的权限创建一个,将其放入 SOAP 端点的配置中,然后调用。
第三个组件是托管 SOAP 端点。 GitHub 是否负责托管该应用程序? AzDevOps 没有。您需要为此启动托管基础设施。
这是架构的大概轮廓;如果需要的话我可以提供详细信息。