CI服务器如何工作而无需手动设置webhooks?

时间:2016-12-05 22:13:05

标签: php git jenkins continuous-integration

我很好奇,如Jenkins和CI travis等CI服务器如何设法监视推送事件或更改至少启动他们的构建管道。到目前为止,我想要创建自己的服务器时,您必须设置将数据推送到API端点的webhook。

像Jenkins和Travis这样的CI服务器是否会自动将webhook添加到github或其他东西,还是以不同的方式工作?我很想建立一个非常小的PHP特定CI服务器,但显然我不希望人们每次添加回购时都有设置webhook的麻烦。只需添加您的回购就足够了。 (可选)使用Github帐户登录。

修改

我不明白为什么这会被贬低。如果有人能够更深入地了解一个钩子是如何通过github的webhook界面设置的,我会很高兴。

1 个答案:

答案 0 :(得分:1)

CI系统通常带有已经是系统一部分(或易于安装)的挂钩。

特别是在jenkins中有一个GitHub plugin,可以让你:

  • 在Jenkins项目和GitHub之间创建超链接
  • 通过从post-receive挂钩中删除HTTP POST并可选择自动管理挂钩设置来推送到存储库时触发作业。
  • 将构建状态结果报告回github作为Commit Status(记录在SO上)

(可能更多)。

plugin / ci系统拥有自己的触发器/钩子,适用于不同的工作流程。