启动后,访问效果
jenkins新建ci-test项目
如图操作:
丢弃旧的构建
源码管理选择git
选择对应的账号密码,指定分支
Failed to connect to repository : Error performing git command: git.exe ls-remote -h http://192.168.88.131:9980/root/ci_test.git HEAD
选择git时,有报错,这个错误可能是git的版本太低,要升级下版本或者是jenkins没有配置git。
解决方案:接着登录jenkins界面,依次打开"系统管理" -> “Global Tool Configuration” 全局工具配置-> “Git” -> “Path to Git executable”
保存后,再返回项目的配置,重新配置git信息
这时候就没有报错了
构建触发器,添加webhook
需要安装插件Generic Webhook Trigger、GitLab两个插件才能有此选项
记住后面的GitLab CI Service URL后面要填在gitlab的webhooks中
gitlab配置webhooks
填写URL及token(由于我的没做ssh认证,所以没用ssl认证)
URL:上面配置的jenkins 的url
保存后报错
Urlis blocked: Requests to the local network are not allowed
解决方案:
进入 admin area
测试webhook是否成功
操作后报错
Hook executed successfully but returned HTTP 403
Error 403 anonymous is missing the Job/Build permission
HTTP ERROR 403 anonymous is missing the Job/Build permission
URI: /project/ci_test STATUS: 403 MESSAGE: anonymous is missing the Job/Build permission SERVLET: Stapler
Powered by Jetty:// 9.4.42.v20210604
解决方案:
匿名用户具有可读权限
去掉跨站点请求伪造
Jenkins版本自2.204.6以来的重大变更有:删除禁用 CSRF 保护的功能
Jenkins 2.204.6以前的版本 配置:
Jenkins 2.204.6及以上的版本 配置:
在Jenkins启动前加入相关取消保护的参数配置后启动Jenkins,即可关闭CSRF,配置内容如下:
-Dhudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION=true
重启jenkins,看效果,如图,就是关闭了CSRF。
点击测试,返回200的话就表示成功了。
验证自动化构建
向gitlab提交代码
新增了个接口
push到gitlab
jenkins查看
如图,已经自动构建成功了
我们看看日志
参考
解决“Hook executed successfully but returned HTTP 403”的问题:https://blog.csdn.net/anqixiang/article/details/104969902