如何触发Jenkins构建项目?

时间:2014-08-15 14:15:07

标签: github build jenkins triggers webhooks

每当更新 github 中的源代码时,我都有运行构建任务的任务。但是我对Jenkins很新,我很难完成这个。

我的理解

github.com 会向我指定的特定网址发送POST消息。作为一个例子,让我们使用:

http://mywebsite/src-updated

因此源代码获取更新,github将POST消息发送给mywebsite/src-updated。由于HTTP在端口80上运行,因此Apache会收到此消息。

 ____________LAN____________ 
|                           | 
| ..........   ..........   |  
| :JENKINS :   :APACHE  :   |     POST message to:                ..............
| :Listen  :   :Listen  :<--|<----http://mywebsite/src-updated--- : github.com :
| :on 8080 :   :on 80   :   |                                     :............:
| :........:   :........:   |     
|___________________________|

我的沮丧

现在怎样?

詹金斯就像一个失败者一样坐在那里,没有人愿意和他一起玩。詹金斯先生将如何得到这个信息?我必须在Apache上安装一些模块才能通知他吗?所有这些听起来与我到目前为止阅读的稀疏信息非常不同,所以我觉得我完全偏离了轨道。

我也尝试使用Github插件,但我完全迷失了它应该如何工作(如果你是对整个事情不熟悉的可怕的文档)。

任何帮助?

1 个答案:

答案 0 :(得分:1)

关于使用Apache配置Jenkins,请查看此link。此外,我还在GitHub plugin页面上找到了这个说明:

詹金斯在防火墙内:
如果您的Jenkins在防火墙内部运行且无法从Internet直接访问,则此插件允许您在自动模式下将任意端点URL指定为覆盖。该插件将假设您已设置反向代理或其他方式,以便GitHub的POST将路由到Jenkins

就GitHub中的源代码更新而言,只要运行构建,在Jenkins中配置非常简单。作业/项目的配置页面中存在轮询选项。转到作业的配置部分。搜索Build Triggers部分。您会找到一个名为Poll SCM的复选框。启用此选项会告诉Jenkins在您指定的存储库(在本例中为GitHub)中发现更改后立即启动构建。您必须指定一段时间,之后它会检查GitHub的更改:

例如,

# every fifteen minutes (perhaps at :07, :22, :37, :52)
H/15 * * * *

有关上述内容的更多选项和详细信息,请不要忘记查找帮助部分&#39; &#39; enter image description here