You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

GitLab流水线配置:适配合并前预流水线的自动执行规则需求

解决GitLab自动合并时手动任务卡住的问题

核心方案

借助GitLab内置的$CI_MERGE_REQUEST_AUTO_MERGE_ENABLED环境变量,识别已开启自动合并的MR流水线,让高成本步骤自动执行且必须成功,无需手动干预。

调整后的rules配置

rules:
  # 合并列车流水线:自动运行,必须成功
  - if: $CI_MERGE_REQUEST_EVENT_TYPE == "merge_train"
    when: on_success
    allow_failure: false
  # 开启自动合并的MR流水线:自动运行,必须成功
  - if: $CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_AUTO_MERGE_ENABLED == "true"
    when: on_success
    allow_failure: false
  # 普通MR流水线:手动触发,允许失败
  - if: $CI_PIPELINE_SOURCE == "merge_request_event"
    when: manual
    allow_failure: true
  - when: never

配置说明

  • 当MR开启自动合并后,触发的合并结果流水线会匹配第二条规则,高成本步骤自动执行且不允许失败,避免手动操作卡住自动合并流程。
  • 普通MR场景下,依然保留手动触发、允许失败的原有逻辑,控制运行成本。
  • 合并列车流水线的规则保持不变,确保合并环节的校验严格执行。

内容的提问来源于stack exchange,提问作者David Vonka

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 04:02:02