我尝试按照本文中的说明进行操作:
http://developer.cloudbees.com/bin/view/DEV/GitHub+Commit+Hooks+HOWTO
但是我有两个问题:
它不起作用。当我推送到 github 时,詹金斯方面没有任何反应。在 Jenkins 上,GitHub Hook 日志显示“轮询尚未运行”。
造成这种情况的可能原因是我无法指定 git 存储库,如此图片中所述:
没有用于公钥的文本字段,也没有其他字段。相反,我有这些领域
Repository URL, Name, Refspec
我也可以指定一个 http url(以及除触发之外的所有内容)。但是,如果我在图像中指定 git/ssh url,则会收到以下错误:
无法连接到存储库:命令“git ls-remote -h git@github.com:schauder/degraph.git HEAD”返回状态码 128:stdout:stderr:警告:永久添加 'github.com,207.97.227.239'( RSA) 到已知主机列表。权限被拒绝(公钥)。致命:无法从远程存储库中读取。
请确保您具有正确的访问权限并且存储库存在。
我从 github 复制了 url,所以不太可能出现拼写错误。
我确认我已经安装了 github 插件(升级到 1.5 版)
任何提示如何解决或至少调试问题?
更新评论中的回答问题:
是的,我在作业配置中选中了“将更改推送到 GitHub 时构建”复选框。
是的,我在 GitHub 中设置了 webhook。当我单击那里的测试按钮时,没有任何反应。当我将 webhook 中的 url 放入浏览器时,我得到一个 http 500 说
不打算以交互方式浏览(必须指定有效负载参数)
加上一些冗长的堆栈跟踪。
另一个更新
我检查了 Jenkins 端安装的 GIT 相关插件。在文本中显示他们与 GIT 的所有内容都已安装并且是最新版本