我想尝试一下gitlab的自动发布,前置不多说,先说遇到的问题
手动再搭建一遍gitlab费力不说,还要搞个服务,于是我就用了gitlab.com来配置,都差不多,唯一的缺点是无法做服务器的自定义配置,但也足够了。 点击图中所示箭头处时,总是会报错,Jenkins那边也收不到任何的请求。试了多次都不行,大概跟服务器设置有关系,暂时不求证。
手动提交代码,去做一次merge的时候,发现是可以的,在提交merge、approve、confirm的时候,触发了多次请求
具体可以看6:09分开始的这几次。
接下来做修改就可以了,限制build只在confirm的时候做执行
也就是做到上图中的要求,这样在进行merge的时候就可以,下面是我在6点半确定merge时Jenkins的执行情况
期间对merge做的测试
可见只有在6点半勾选accepted merged 时,Jenkins才进行了一次构建
分支选择build测试
现在设置期望条件:我希望在针对develop/master做合并的时候,去进行build,其他分支则不做。
仔细观察前面一张图中的target branch,你会发现, 在t7合并到t1的时候Jenkins什么也没做,在t1合并到develop的时候,进行了一次build。
对应的Jenkins的设置是:
分支对应发布