zoukankan      html  css  js  c++  java
  • GitLab+jenkins 进行代码Merge自动错误检测

    分支合并前,通常需要在本地进行合并测试,看是否有代码冲突,编译是否通过,没有问题了,才敢把合并后的代码往主干分支提交,如果分支很多怎么办? 如果日常需要经常合并怎么办? 每次手动来这么一个测试步骤会不会很烦? 现在有这么一个插件,可以在服务器进行自动合并检测,并报告给GitLab, 用户可以愉快的进行合并分支。

    一、在jenkins中安装Gitlab Merge Request Builder 插件

    在可选插件中选择该插件并进行安装,如图

     

    二、在jenkins系统设置中设置Gitlab Merge Request Builder

    安装好插件后,在首页中点击“系统管理”-》“系统设置”可对Merge Request进行设置,如图

     
     

    jenkins UserName:这个用户必须是GitLab用户,用于来访问GitLab的

    Jenkis Api Token:这个Token可以从GitLab获取到

     

    Crontab line:定时时间,推荐每5分钟检测一次

    三、新建Job

    首页点击“新建”,输入Job名,选择“构建一个自由风格的软件项目”,

    配置Git源码,如图:

    Credentials:不知道配置的请参考《Jenkins+Gradle+Git+Centos 实现android持续集成、打包(超详细)》

    ${gitlabSourceBranch}:合并的源分支,如develop,如果测试不通过,可直接输入develop分支名

    ${gitlabTargetBranch}:合并的目标分支,如master,如果测试不通过,可直接输入master

     

    配置构建触发器,选择GitLab Merge Requests Builder

    GitLab Project Path: 输入Git地址尾后部分,如git地址是git@gitlab.xxx.com:Android/long_temp.git,输入Android/long_temp

     
     

    假如还需要在合并后测试是否编译通过,在构建步骤中,选择Invoke Gradle script,配置如下:

     
     

    点击“保存”。

    测试如下:

    在GitLab中发起一个Merge Request

     
     

    Jenkins在5分钟后(配置的时间)检测到这个pull Request,随后进行合并和构建的工作,并通知GitLab,如果测试通过(如图Tests Passed消息),点击Accept Merge Request,合并工作即可完成。

     
     
     
     

     



    作者:成玉春
    链接:https://www.jianshu.com/p/7e7f02da18b5
    来源:简书
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

  • 相关阅读:
    vue-router HTML5 History 模式(转自官网)
    使用fastjson解析数据后导致顺序改变问题
    Mybatis一对多或多对多只能查出一条数据解决策略
    mybatis 学习教程
    Mybatis根据List批量查询List结果
    @Param注解的用法解析
    关于mybatis使用小于号大于号出错的解决方案
    if test表达式逻辑判断不能用&&
    MyBatis中传入参数parameterType类型详解
    MyBatis 判断条件为等于的问题
  • 原文地址:https://www.cnblogs.com/linwenbin/p/13929139.html
Copyright © 2011-2022 走看看