首页 新闻 会员 周边

gitlab或者jenkins如何自动创建gitlab中的合并请求

0
悬赏园豆:20 [待解决问题]

场景说明:hotfix分支需要定时合并到dev,想要在jenkins中定时测试合并hotfix到dev,成功的话就创建一个gitlab的merge request,然后等待管理人员合并通过或者触发jenkins自动合并通过

找了一下,好像没有相关插件能实现向gitlab 发送创建合并请求的功能。

虽然也可以直接通过git命令合并hotfix到dev,但是gitlab上面合并请求列表中缺少这一次操作过程记录

shangsharon的主页 shangsharon | 菜鸟二级 | 园豆:251
提问于:2021-03-01 18:47
< >
分享
所有回答(1)
0

你这个需求赶脚有点奇葩哈,

  1. hotfix 分支名称应该不固定的吧. jenkins没法知道hotfix分支的名称呀, 怎么自动化呢?.
  2. 通常情况下,非master分支构建行为应该是人为触发的. 定时触发一般是类似做 build master分支的每日构建版本这种.
  3. 如果要实现问题也不大, 自己写一个web request 在jenkins里面直接请求gitlab创建一个merge request就可以了, jenkins 有http request plugin, gitlab 也有api.
czd890 | 园豆:14412 (专家六级) | 2021-03-02 10:56

1.项目都有固定的master,release,hotfix,develop分支,bug修复或临时上线的功能都在hotfix拉分支处理开发,每个开发中的hotfix分支都要合并到固定hotfix后才发布到生产环境,这样hotfix就领先develop很多了,希望每天自动创建一个hotfix到dev的合并请求,审核后hotfix就和dev同步一次了,开发环境也能同步一下临时发布的功能了,有时候临时发布的功能开发人员自己测试不完善就发布了,同步到开发环境也可以让测试人员补充测试一下
2.develop 开发环境是jenkins定时轮训拉更新发布的,等不了那几分钟的话也可以自己到jenkins手动执行构建
3.其实我也找了gitlab的创建合并请求接口,就是想问问是不是有相关插件我可能没搜索到的,不然自己写curl请求还要指定各种凭证,分支信息.有插件简单配置一下就能搞定多方便

支持(0) 反对(0) shangsharon | 园豆:251 (菜鸟二级) | 2021-03-02 11:12

@shangsharon:

那可以考虑用gitlab-->CI/CD-->schedule 创建定时任务, 创建hotfix到develop分支的merge请求. 然后在jenkins里面用gitlab jenkins插件对merge request进行build和merge操作.

支持(1) 反对(0) czd890 | 园豆:14412 (专家六级) | 2021-03-02 11:26
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册