我在私有Gitlab v9.0示例上创建并配置了一个项目。我在Jenkins v2.46.1上导入了这个项目,与gitlab的连接成功。之后,我尝试在gitlab中的repo中配置push事件的构建触发器。我已经在jenkins上为其生成了secret token,并在尝试测试它返回给我的webhook时添加了Gitlab CI URL和secret token例外
Hook executed successfully but returned HTTP 403 <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> <title>Error 403 anonymous is missing the Job/Build permission</title> </head> <body><h2>HTTP ERROR 403</h2> <p>Problem accessing /project/tapp-builder-service. Reason: <pre> anonymous is missing the Job/Build permission</pre></p><hr><i><small>Powered by Jetty://</small></i><hr/> </body> </html>
字符串
有人能帮我解决这个问题吗?
5条答案
按热度按时间lymgl2op1#
您可以在Jenkins中为此添加一个特殊用户并相应地在GitLab中配置Webhook,或者您可以在全局Jenkins配置的GitLab部分中取消选中复选框“Enable authentication for '/project' end-point”。但默认情况下,这应该是未选中的。
rryofs0p2#
最好的配置方法是
需要/project端点授权复制具有运行作业授权的Jenkins用户的用户ID和API密钥
1.在GitLab上创建一个webhook来触发作业
1.然后使用HTTP basic auth(以下格式):
http://user:apikey@gitlab/project/jobname
lx0bsm1f3#
最好的选择是创建一个secret token(来自Jenkins),然后将其添加到gitlab webhook的secret key中
oewdyzsn4#
请确保在将配置更改(即生成的秘密令牌)复制到Gitlab Webhook页面之前,先在Jenkins服务器上保存
scyqe7ek5#
转到jenkins Jmeter 板,单击管理jenkins,然后单击身份验证部分下的安全性,更改授权下拉菜单,以使任何人都可以做任何事情