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

GitLab CI中include规则执行异常问题咨询

GitLab CI 流水线配置问题排查

配置文件详情

.gitlab-ci.yml

stages:
- build

include:
  - local: ci/merge-request.gitlab-ci.yml
    rules:
      - if: $CI_PIPELINE_SOURCE == "merge_request_event" || ($CI_PIPELINE_SOURCE == "push" && $CI_OPEN_MERGE_REQUESTS)
  - local: ci/default-branch.gitlab-ci.yml
    rules:
      - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH

merge-request-direct:
  stage: build
  script:
    - echo "merge-request-direct"
  rules:
    - if: $CI_PIPELINE_SOURCE == "merge_request_event" || ($CI_PIPELINE_SOURCE == "push" && $CI_OPEN_MERGE_REQUESTS)

ci/merge-request.gitlab-ci.yml

merge-request-included:
  stage: build
  script:
    - echo "merge-request-included"

ci/default-ranch.gitlab-ci.yml(文件名存在拼写错误)

default-branch:
  stage: build
  script:
    - echo "default-branch"

实际执行表现

  • 推送或合并内容至CI_DEFAULT_BRANCH分支时,仅default-branch任务执行,符合预期;
  • 推送内容至其他分支时,无任务执行,符合预期;
  • 创建合并请求时,仅merge-request-direct任务执行,不符合预期,merge-request-included任务未按预期运行;
  • 推送更新合并请求分支时,会运行两条流水线:
    • 分支推送流水线:merge-request-direct与merge-request-included任务均执行,符合预期;
    • 合并请求流水线:仅merge-request-direct任务执行,不符合预期,上述两个任务均应运行。

问题原因与解决方法

问题原因

merge-request-included作业未配置运行规则,在GitLab CI中,未设置rules/only/except的作业默认仅在branches或tags触发的流水线中运行。而合并请求流水线(由merge_request_event触发)不属于这两类范畴,因此该作业不会自动执行。

分支推送流水线属于push类型(CI_PIPELINE_SOURCE=push),属于branches范畴,所以未配置规则的merge-request-included能正常执行;但合并请求流水线本身不触发默认规则的作业,只有配置了明确规则的merge-request-direct会运行。

另外注意:你的ci/default-ranch.gitlab-ci.yml文件名存在拼写错误(应为default-branch),建议修正避免后续分支流水线出现问题。

解决方法

给ci/merge-request.gitlab-ci.yml中的merge-request-included作业添加与merge-request-direct一致的运行规则:

merge-request-included:
  stage: build
  script:
    - echo "merge-request-included"
  rules:
    - if: $CI_PIPELINE_SOURCE == "merge_request_event" || ($CI_PIPELINE_SOURCE == "push" && $CI_OPEN_MERGE_REQUESTS)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.30 17:11:09