V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
qloog
V2EX  ›  GitLab

Gitlab-CI 是否支持 MR 的测试覆盖率达到某个百分比才可以合并?

  •  
  •   qloog · 2020-05-11 17:28:02 +08:00 · 3000 次点击
    这是一个创建于 1417 天前的主题,其中的信息可能已经有所发展或是发生改变。
    目前测试是只能显示出测试覆盖率,但是想要让测试覆盖率达到某个百分比才能合并 MR,目前没有找到相关资料。

    测试项目: https://gitlab.com/easygogo/go-ci-demo

    不知大家是否做过这种操作,欢迎交流。
    4 条回复    2021-11-08 19:10:58 +08:00
    maichael
        1
    maichael  
       2020-05-11 17:30:27 +08:00
    只要不达到覆盖率标准的直接 fail 不就好了,然后 fail 的合并请求不准合并。
    qloog
        2
    qloog  
    OP
       2020-05-11 17:34:53 +08:00
    @maichael 这个怎么实现?有例子可以参考不?
    Alandu
        3
    Alandu  
       2021-01-12 16:43:03 +08:00
    在 project 的设置中,选择“通用”-->“合并请求”-->“合并检查”-->“流水线必须成功”,打勾。配合你所使用的测试覆盖率软件,判断扫描结果是否达标,不达标的想办法让这个 job 失败,就行了。
    这个逻辑是:每次代码合并都要触发扫描,扫描结果不达标则 job 失败,job 失败则流水线不成功,流水线不成功则合并检查失败,合并检查失败则无法合并。最终效果就是扫描结果不达标则无法合并。
    jinzhongyuan
        4
    jinzhongyuan  
       2021-11-08 19:10:58 +08:00
    @Alandu 你好,这个好像只能拦截 merge request, 不能拦截正常的 git push 吧
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   4128 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 05:24 · PVG 13:24 · LAX 22:24 · JFK 01:24
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.