Rootop 服务器运维与web架构

Gitlab+jenkins自动构建指定分支

注意点1:
在jenkins中,源码管理 Git Branches to build 中指定的分支名(比如一个分支名叫simon),在jenkins中手动点击构建时,jenkins拉取的分支为simon。

注意点2:
当在gitlab中配置了web钩子当触发推送事件到jenkins中时,jenkins拉取的分支为git push推送时所在的分支。
比如当前代码在master分支,git push时触发推送事件,jenkins会拉取master分支。
如果当前代码在test分支,git push时触发推送事件,jenkins会拉取test分支。
(通过钩子触发的构建,在 源码管理 – Git – Branches to build 中配置的分支名并不会被jenkins拉取构建)

这样就失去了我的本意(拉取固定分支)。

实现指定分支构建方法:
1、
在jenkins中有个插件名叫 Git Parameter ,安装以后在 参数化构建过程 中会多出一个参数也叫Git Parameter。(具体配置百度搜索即可)
这个可以实现多分支构建,在构建时,并不会立即构建,他会先拉取代码,然后分析有多少分支,并列出来让你手动去选择分支,再去构建。
但是这样就无法实现自动化构建了(必须人工选择)。

2、
我所使用的方法:
构建触发器Build when a change is pushed to GitLab. GitLab webhook URL: http://xxxxxx 这里有个 高级 选项。
选择 Filter branches by name ,然后 Include 里写要构建的分支,比如simon。

PS:
印象里这个webhook地址是需要安装 GitLab Plugin 这个插件才会出现url地址。

这样配置以后当代码推送时,如果推送的分支是simon分支,则会开始自动构建,其它分支推送时则不会触发自动构建。
(当一个分支名为simon2时,也不会构建)

这样就实现指定分支推送自动构建了。

原创文章,转载请注明。本文链接地址: http://www.rootop.org/pages/4140.html

作者:Venus

专注于 服务器运维与web架构 E-mail:venus#rootop.org

评论已关闭。