Gitlab 条件作业执行

时间:2021-07-30 15:42:33

标签: gitlab conditional-statements gitlab-ci jobs

我正在尝试在 Gitlab CI 中实现以下功能。我想在 BOTH 条件为真时执行作业:

  1. 向主分支发出合并请求
  2. 存在 git commit 标签。

同样,我希望在满足BOTH条件的情况下运行作业。

过去,这可以通过使用 onlyexcept 关键字来实现。由于这些已弃用一段时间,我想使用 rulesif 关键字/语句来实现该功能。

我的第一次尝试是这样的:

job1:
  script:
    - echo "Do some stuff ..."
  rules:
    - if: '$CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "master" && $CI_COMMIT_TAG != ""'

但是,由于我无法理解的原因,这似乎不起作用。有人能帮我解决这个问题吗?

在这种情况下,我还想知道这两个条件的舍入是否会导致问题,以及在多个 if 语句中指定条件是否更合适,如下所示:

job1:
  script:
    - echo "Do some stuff ..."
  rules:
    - if: '$CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "master"'
    - if: '$CI_COMMIT_TAG != ""'

相应的 Google 搜索并没有让我更接近解决方案。我找不到有关多个 if 语句主题的任何内容。也许其他人知道更多?

在这方面的任何帮助将不胜感激。

0 个答案:

没有答案
相关问题