webhook地址
jenkins生成webhookURL,并将webhookURL添加到gitlab的项目中,当用户提交代码时,gitlab就会利用webhook去通知jenkins触发构建。

在jenkins中即使job设置了参数化构建依然不影响触发webhook(webhook写的是哪个分支就触发哪个分支)

1、gitlab关联jenkins
(1) gitlib——settings——Acess Tokens——name(起个名字)——Create personal access token
在这里插入图片描述
在这里插入图片描述
(2) 复制生成的Token(这个Token只生成一次)
在这里插入图片描述
(3) 回到jenkins——系统配置——gitlab——测试一下
在这里插入图片描述
在这里插入图片描述
(4) 在gitlab创建一个dev分支
在这里插入图片描述
在这里插入图片描述
2、进入jenkins的job项目生成WebToken
(1) 配置源码,这里只拉取dev分支
在这里插入图片描述
(2) 构建触发器——指定分支dev (只有dev分支有代码提交时才出发webhook钩子)
在这里插入图片描述
在这里插入图片描述
新版jenkins这里的配置
在这里插入图片描述
3、回到gitlab配置webhook
(1) 进入项目——settings——integrations
在这里插入图片描述
(2) 输入jenkins中复制的url和token——点击完成——不要用这里的test,不好用
在这里插入图片描述
在这里插入图片描述
4、在任意一台linux服务器提交代码到dev分支

(1) 切换到dev分支
# git clone http://192.168.1.104/dev/my-project1.git  # 把git仓库拉下来
# cd my-project1/         # 进入仓库
# git pull origin master  # 更新一下代码库
# git fetch               # 把所有分支拉下来
# git status              # 查看当前所在分支为master
On branch master
nothing to commit, working directory clean
# git checkout dev        # 切换到dev分支
# git status
On branch dev
nothing to commit, working directory clean

(2) 在dev分支提交代码
# touch hello.txt
# git add .
# git commit -m "add new file"
# git push origin dev  # 提交代码到dev分支
Counting objects: 3, done.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (2/2), 231 bytes | 0 bytes/s, done.
Total 2 (delta 1), reused 0 (delta 0)
remote: 
remote: To create a merge request for dev, visit:
remote:   http://192.168.1.104/dev/my-project1/merge_requests/new?merge_request%5Bsource_branch%5D=dev
remote: 
To http://192.168.1.104/dev/my-project1.git
   2dd89e8..95aac6a  dev -> dev

5、回到jenkins查看webhook已被触发
在这里插入图片描述

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐