我正在尝试将数据(有效负载)从 BitBucket 发布到我的 Kafka 实例,以防发生任何 BitBucket 事件(Pushed
例如PR评论Forked
等PR creating
)Addition
Modification
Deletion
所以,我已经设置了 Kafka rest-proxy,但我无法将数据从 BitBucket 发送到 Kafka,因为使用Kafka REST 代理Content-Type
发布数据所需的是,并且 BitBucket 的有效负载的标头设置为(我使用的是默认的 BitBucket webhook在级别配置)。application/vnd.kafka.json.v2+json
application/json
Repository
这是从 BitBucket 的 Webhook 触发的请求:
我从 Kafka 的 REST 代理得到的响应是这样的:
我考虑过以下解决方案:
我可以编写一个简单的 Web 服务器,充当两个系统(BitBucket 和 Kafka)之间的中介。服务器可以充当中间代理,从 BitBucket 的 webhook 获取传入请求,并
Kafka REST proxy
使用适当的标头 (application/vnd.kafka.json.v2+json
) 将其发布到。该解决方案有效,但缺点是维护另一台服务器(由我编写)。此外,由于 BitBucket 开始频繁触发 webhook(高峰时段每秒 100 次,因为我们只有一个 BitBucket 实例并且我们有大约 3500 名开发人员) ,因此它可能会遇到可伸缩性问题。
我可以使用一个 BitBucket 插件,它可以作为 a
webhook
并且允许我动态配置和更改标头。这是我正在努力实现的解决方案。也不需要维护额外的服务器。
是否有一个 BitBucket 插件,我可以从市场上安装它,它可以让我在触发 webhook 时配置标头?
PS - 很抱歉写了这么长的问题。这两个解决方案只是我的想法。如果有更好的解决方案将 BitBucket 与 Kafka 集成,我不会感到惊讶。另外,如果问题不清楚,请告诉我。在这种情况下,我会尝试以不同的方式澄清我的问题。
谢谢