更新:
正如Craig Ringer在他的回答中提到的那样,您可以在GitHub插件设置的“配置Jenkins”下选择Grant READ permissions for /github-webhook
,允许调用Webhook而无需进行身份验证。
另一个更新:现在(2014年12月)可以为组织使用Webhooks:请参见组织的WebHooks API。
注意:
问题4的
hudson-github-plugin是关于以下内容的:
Last GitHub Push
Polling has not run yet.
结论是:
没关系,唯一缺失的部分是github用户的权限复选框,在互联网上没有任何文档记录。
那么这是关于您的Jenkins用户的权限问题吗?
文章 "Set up Jenkins-CI on Ubuntu for painless Rails3 app CI testing" 包括以下流程:
为了限制CI系统并允许您的团队成员使用或查看构建日志,首先您需要创建一个账户。
1. 进入“管理Jenkins > 配置系统”页面,
2. 选中“启用安全性”复选框,
3. 在“安全领域”下,选择Jenkins自带的用户数据库,
4. 选中“允许用户注册”复选框,
5. 在“授权”下,选择“基于项目矩阵授权策略”,
6. 添加两个用户,“admin”和“GitHub”(注意:管理员访问的用户名必须是“admin”)。“GitHub”用户只需选择整体只读权限。稍后我们将使用此用户进行GitHub hook操作。
注:在上述步骤中添加的“admin”和“GitHub”用户并未创建用户。然后,您需要创建一个具有相同名称的真实用户。是的,我知道,在Jenkins UI下有点奇怪。
7. 进入“管理Jenkins > 管理用户 > 创建用户”页面,创建“admin”和“GitHub”用户。
使用Github webhook进行对接
现在,为了在Github上推送新提交或分支时自动运行构建,我们必须设置仓库。
8. 进入您的仓库钩子页面。例如,
github.com/<username>/<project_name>/admin/hooks
在“可用服务钩子>接收后URL”下,添加“github:github@your-ci-server.com/github-webhook/”。
这里的“github:github”是我们之前创建的用户。
然后我们需要验证Jenkins与Github。转到“管理Jenkins>配置系统”,在GitHub Web Hook下,添加您的Github用户名和密码,并单击“测试凭据”按钮以在Github上进行一次授权。
github
、密码github
联系 Jenkins。 - VonC