Jenkins在本地主机上运行。我的存储库在GitHub中。我可以 选择“将更改推送到GitHub时构建”。
当我单击“立即构建”时,构建成功完成,那里没有问题。但是, 当将代码提交到我的存储库时,不会自动构建。我可以 从我的系统访问GitHub,因为该存储库是公共的,我相信甚至 Jenkins也应该能够检测到它。我知道有一个轮询选项,但是我 希望Jenkins在存储库中检测到更改时进行构建(因为这是我们 一直在努力实现的目标)。
组态:
詹金斯1.615
Git插件2.3.5
Git客户端插件1.17.1
——————————————————————————————————————————————
编辑:“ 在将更改推送到GitHub时进行构建 ”在最新版本 的GitHub插件中,该选项已 重命名为“ GITScm轮询的GitHub挂钩触发器 ” 。(感谢@smrubin的反馈。)
我怀疑你错过了webhook url。
除了选中该Build when a change is pushed to GitHub选项之外,还 应该将webhook网址添加到Github存储库中,以使自动触发机制起作用,这是如何进行的:
Build when a change is pushed to GitHub
webhook
Github
转到您的Github存储库:
设置–> Webhooks&Services–>服务–>添加服务–>选择“ Jenkins(GitHub插件)”
然后Jenkins hook url像这样用您的詹金斯网址填写: http:// your_jenkins_url / github-webhook / 在此处输入图片说明
而且,非常重要,因为要安装在您的詹金斯服务器本地主机,请注意,你不应该上述詹金斯钩填的网址一样http://localhost:8080/github-webhook/,因为Github上无法 识别localhost或127.0.0.1或192.168..。
您应该使用Github可以识别的外部可访问DNS名称或IP地址。