詹金斯不是由github-webhook触发的

时间:2019-06-22 09:17:18

标签: jenkins github webhooks

我已采取以下步骤:

  • 检查“ GitHub项目”并设置项目
  • 选中“ GitHub钩子触发器以进行GITScm轮询”
  • 使用用户名/密码设置到私有存储库的连接
  • 如果我手动构建,它会起作用
  • 在GitHub中,在推送到http://my_jenkins_url/github-webhook/上创建一个Webhook
  • 每当我提交某些内容时,它表明已发送一个Webhook,并且我得到了200个响应代码(在github上)

但是Jenkins不会触发构建。 GitHub Hook日志说:“轮询尚未运行。”。如何使其“开始”?我该如何进一步调试呢?

编辑:由于我在身份验证方面遇到问题,因此我尚未在Manage Jenkins-> Configure-> GitHub中添加GitHub Server(但这将是另一个问题)。 github webhooks是否需要此选项?

EDIT2:我弄清楚了如何将GitHub API添加到Jenkins配置中(使用启用了git hook访问的Personal Access Token)。但这似乎没有什么作用。

1 个答案:

答案 0 :(得分:2)

我发现了如何正确修复它。

第一。在Jenkins管理>系统日志中设置Jenkins记录器

使用此配置添加日志记录器

hudson.plugins.git.GitStatus - All
com.cloudbees.jenkins.GitHubWebHook - All
org.jenkinsci.plugins.github - All

第二。再次触发钩子。

,然后再次检查记录器。就我而言,记录器会说

Skipped {ProjectName} because it doesn't have a matching repository.

第三。检查Webhook请求确切来自何处的Webhook网址。

它将在记录器中这样指定:

Received PushEvent for https://github.com/{username}/{reponame} from {ip} ⇒ http://{your jenkins url}/github-webhook/

第四。再次转到jenkins项目配置,

在步骤3中检查整个github网址是否与https://github.com/ {username} / {reponame}完全相同。

最后没有.git。

希望此答案对您有所帮助。谢谢