本文介绍如何基于事件总线EventBridge的API端点和Jenkins监控源进行集成对接。
背景信息
API端点(API Destinations)可以帮助您调用第三方SaaS系统或自建系统的HTTP接口,提供低代码接入方式,无需更多额外架构即可完成接口调用。借助API端点,您可以轻松构建和对接SaaS应用,打通数据孤岛。同时多个API可共用一套连接配置(Connection),提供便捷、可插拔的鉴权能力。
第三方SaaS系统或自建系统等服务中的API包含了API端点和Connection两部分信息。
API端点定义了API的元数据,您在创建事件规则时可以引用不同的API端点以访问不同的第三方SaaS系统或自建系统,不同规则也可以引用同一个API端点。多个规则向同一个目标服务API进行事件投递时,在没有API端点之前,一旦需要修改某个参数,需要修改所有的规则,但如果将目标服务的API定义成API端点,那么只需要修改API端点的配置,则所有引用这个API端点的规则,将同步自动更新。

Connection主要用于实现外部服务与当前API端点的连通性。Connection中包含两部分内容:首先是网络配置,即外部服务与当前API端点之间是通过公网还是私网进行连接。其次,Connection中还包含了鉴权配置信息。事件总线EventBridge选取了目前最常用的三种鉴权方式:Basic Auth、OAuth和API Key。
- Basic Auth(基本身份验证):使用时用户名和密码需要经过验证才能访问数据资源。用户名和密码会被base64编码并加上Basic空格前缀,一起发送到目标服务。目标服务端进行解码并认证通过后,会响应事件总线EventBridge的请求,如果认证失败,则直接打回。
- OAuth(开放授权):一种更加安全可靠的授权认证方式。OAuth有四种授权方式,分别是授权码、隐藏式、密码式和客户端凭证。在事件驱动场景中,常用到的是客户端凭证授权方式。在这种模式下,您需要在事件总线EventBridge配置获取客户端凭证所需要的一些信息,包括OAuthService地址、客户端ID、客户端密码等,事件总线EventBridge支持GET/POST两种方式,去获取客户端凭证。
- API Key:一种比较简单的认证方式。用户可以自定义API访问的KeyName和KeyValue。事件总线EventBridge会将其通过HttpHeader的方式,传输到服务端进行认证。

Jenkins是一个基于Java开发的持续集成工具,主要用于持续、自动地构建和测试软件项目,以及监控外部任务的运行。下面,以Jenkins为例介绍如何使用事件总线EventBridge的API端点功能与Jenkins进行集成并触发构建部署。
前提条件
步骤一:添加API Token
步骤二:创建Connection
步骤三:创建API端点
- Connection创建完成后,单击API端点页签,然后单击创建。
- 在创建API端点面板,设置以下参数,然后单击确定。
- 在基础信息区域,将创建方式设置为自定义创建,然后设置API目标的名称和描述。
- 在API配置区域,将URL设置为Jenkins的API地址,本示例中使用
http://localhost:8080/job/test/build
来调用Jenkins工程构建,将HTTP Method设置为POST。 - 在连接配置区域,点击选择已有,然后选择上文创建Connection中的Connection。
步骤四:创建自定义总线
- 在左侧导航栏,单击事件总线,然后在自定义事件总线区域单击快速创建。
- 在创建自定义事件总线面板,设置以下参数,然后单击创建。
步骤五:发布事件
- 在事件总线页面,找到上文中创建的自定义事件总线,在其右侧操作栏单击发布事件。
- 在发布事件至自定义事件总线面板,选择自定义事件源为提前创建好的事件源,单击确认。