提要
但是有一个问题就是,如果项目是多分支的情况下,每一个分支的提交都会触发Jenkins运行,这一点肯定是我们不想看到的,下边我们就解决一下这个问题。
背景
- 使用JenkinsWebHooks进行持续集成的时候,我们首先应该明白,他的原理大致是这样的:当我们每一次提交代码到gitlab的时候,gitlab会帮我们发送一个关于Push的Post请求到我们的Jenkins服务器,然后Jenkins持续集成插件Generic Webhook Trigger会接收到请求的参数,对于gitlab平台,Push 的数据格式是这样子的:
Contributing variables: branch = refs/heads/master commitSha = 3b9a10640295eac079249bcba0b0bab21d705866 projectld = 7 runOpts = GitlabPush runOpts_0 = GitlabPush userName = root
- 如果我们想自己根据不同的分支的提交情况来触发Jenkins构建,那么我们就应该知道,上述的Post数据哪一个属性代表了不同的分支情况。
- 结果是,Post数据的第二行
branch = refs/heads/master
Jenkins配置的内容
- 可以看出并没有做正则匹配,代码提交到任何一个分支都会构建。
- 加入正则匹配后,只要是单个项目,在指定分支下才会成功。
- 扩展地址 https://blog.csdn.net/xlgen157387/article/details/76216351
- 我的QQ
- QQ扫一扫
-
- 我的头条
- 头条扫一扫
-
评论