.gitlab-ci.yml 中的规则条件是否有 AND 选项?

问题描述 投票:0回答:3

我想创建一些嵌套条件:当它是合并或合并请求并且以特定名称开始“功能”时,我需要此管道才能工作。那么,职位的“唯一”选项中是否有 AND 条件?

logic gitlab-ci gitlab-ci-runner
3个回答
47
投票

不,没有。您必须使用规则

test:
  stage: test
  script:
    - echo "test"
  rules:
    - if: '$CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_TITLE =~ /^feature/'

0
投票

还有另一个运算符,即 AND 运算符。 您可以将 gitlab-ci.yml 文件中的

AND
替换为
&&
运算符。我们就是这样做到的!


0
投票

丹尼尔内尔兹的答案是正确的。我只是想指出使用多行 YAML 字符串的选项,例如:

test:
  stage: test
  script:
    - echo "test"
  rules:
    - if: >
        $CI_PIPELINE_SOURCE == "merge_request_event" &&
        $CI_MERGE_REQUEST_TITLE =~ /^feature/
© www.soinside.com 2019 - 2024. All rights reserved.