gitlab-ci.yml - before_script - 如何在特定阶段只 运行

gitlab-ci.yml - before_script - how to only run it in specific stages

我有以下gitlab-ci.yml:(只显示相关代码)

stages:
  - unitTest
  - deploy-fn-development
  - deploy-fn-rehearse
  - deploy-fn-prod

include: "/ci_templates/.create-variables.yml"

这是包含文件的样子:

default:
  before_script:
    - etc.

代码有效并在管道的每个阶段创建我需要的变量。但是现在我只需要 运行 create-variables.yml 在排练和制作阶段 有没有办法用当前的结构来做到这一点?还是我必须将其作为一般包含删除,并以某种方式在我想要 运行 的每个特定阶段包含 create-variables.yml?

谢谢

您可以覆盖 before_script 或在 per-job 基础上配置继承。

default:
  before_script:
    - echo "default before_script"

some_job:
  # ...
  before_script:
    - echo "overrides before_script"

您还可以使用 inherit: 键配置作业是否从 default: 继承属性。

some_job:
  inherit:
    default: false  # this job won't inherit any `default:` keys

没有在 per-stage 基础上应用此类更改的机制。