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

GitLab CI only转rules:stage@仓库名语法解析与转换方法

GitLab CI: only 语法转 rules 方案解析

原语法的意义

stage@helloTeam/Expansion 是 GitLab CI 中精准限定作业运行范围的写法:

  • stage 是目标分支名称
  • @ 作为分隔符,后面的 helloTeam/Expansion 是项目的完整路径
  • 整句表示:deploy-image 作业仅在 helloTeam/Expansion 项目的 stage 分支触发的流水线中运行

转换为 rules 语法的实现

利用 GitLab 内置的预定义变量,可写出完全等价的 rules 规则:

deploy-image:
  stage: deploy
  rules:
    - if: '$CI_COMMIT_BRANCH == "stage" && $CI_PROJECT_PATH == "helloTeam/Expansion"'
      when: always

细节说明

  • CI_COMMIT_BRANCH 自动获取当前流水线对应的分支名,CI_PROJECT_PATH 对应当前项目的完整路径
  • when: always 确保满足条件时作业必然执行,和原 only 语法的行为完全一致

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 18:09:53