Gitlab CI/CD: 环境变量的默认值

Gitlab CI/CD: default value for environment variables

我想编写一个管道并包含一些默认值,用户可以在项目 CI/CD 设置中覆盖这些默认值。

我可以做类似 .gitlab-ci.yml 的事情吗?文档中不清楚...

variables:
  VAR: $VAR || "default"

或者用户在设置中设置这个值,或者使用默认值。

问候

项目变量可以覆盖.gitlab-ci.yml.

中作业中定义的变量

例如:

try-job:
  image: ubuntu:20.04
  variables:
    VAR1: 'var 1 setting in gitlab-ci.yml'
    VAR2: 'var 2 setting in gitlab-ci.yml'
  script:
    - echo $VAR1;
    - echo $VAR2;

我正在设置 VAR2 变量是 CI/CD 变量:var 2 setting in project cicd variable

https://gitlab.com/mouson-gitlab-playground/gitlab-ci-parallel-test01/-/jobs/1821982396


变量的优先顺序是(从高到低):

  1. 触发器变量、计划流水线变量和手动流水线 运行 个变量。
  2. 项目变量。
  3. 分组变量。
  4. 实例变量。
  5. 继承变量。
  6. .gitlab-ci.yml 文件中作业中定义的变量。
  7. 在 .gitlab-ci.yml 文件中在作业之外(全局)定义的变量。
  8. 部署变量。
  9. 预定义变量。

参考:https://docs.gitlab.com/ee/ci/variables/index.html#cicd-variable-precedence