在 Gitlab Pipeline 中如何使用引用在同一规则中添加另一个条件

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

在 gitlab 管道中,我有一份使用“参考”规则的工作。如何使用

在同一规则中添加另一个条件
.rules:default:
  rules:
    - if: $CI_PIPELINE_SOURCE == 'merge_request_event'
      when: never
    - if: $CI_COMMIT_REF_NAME == "main" && $VERSION_NUMBER != "current"

myjob:
  stage: myjob
  script:
    - echo "I am executing myjob"
  rules:    
    - $Environment == "sbx" && !reference [".rules:default", rules]

这表明这是错误

This GitLab CI configuration is invalid: jobs:myjob rules should be an array containing hashes and arrays of hashes

gitlab gitlab-ci gitlab-ci-runner
1个回答
0
投票

您不能使用

!reference
进行字符串插值——YAML 规范中也没有插值原语。

但是,您可以通过使用附加规则来获得相同的效果:

  rules:    
    - if: $Environment != "sbx"
      when: never
    - !reference [".rules:default", rules]
© www.soinside.com 2019 - 2024. All rights reserved.