设置适用于 CI 配置中所有作业的 variables/config
Set variables/config that apply for all jobs in the CI config
如何设置适用于管道中所有 jobs/steps 的变量或配置?我正在使用 Auto Devops。
目前,我正在如下使用,但我想将重试配置应用于管道中的所有作业,而不是如下所示为每个作业指定它。有办法做到这一点吗?
build:
retry:
max: 2
when:
- runner_system_failure
- stuck_or_timeout_failure
- scheduler_failure
- stale_schedule
- unknown_failure
review:
retry:
max: 2
when:
- runner_system_failure
- stuck_or_timeout_failure
- scheduler_failure
- stale_schedule
- unknown_failure
如果您想使用一个变量,您可以在 yaml 的基础级别应用它,它将应用于该 CI/CD 中的所有作业。如果您想应用更通用的东西(例如示例中的重试),请使用带有“extends”关键字的 yml 锚点。这是两者的示例:
variables:
EVERY_JOB_VARIABLE: "hello world"
.anchor_retry:
retry:
max: 2
when:
- runner_system_failure
- stuck_or_timeout_failure
- scheduler_failure
- stale_schedule
- unknown_failure
build:
extends: .anchor_retry
script:
- echo $EVERY_JOB_VARIABLE # prints "hello world"
review:
extends: .anchor_retry
script:
- echo $EVERY_JOB_VARIABLE # prints "hello world"
如何设置适用于管道中所有 jobs/steps 的变量或配置?我正在使用 Auto Devops。
目前,我正在如下使用,但我想将重试配置应用于管道中的所有作业,而不是如下所示为每个作业指定它。有办法做到这一点吗?
build:
retry:
max: 2
when:
- runner_system_failure
- stuck_or_timeout_failure
- scheduler_failure
- stale_schedule
- unknown_failure
review:
retry:
max: 2
when:
- runner_system_failure
- stuck_or_timeout_failure
- scheduler_failure
- stale_schedule
- unknown_failure
如果您想使用一个变量,您可以在 yaml 的基础级别应用它,它将应用于该 CI/CD 中的所有作业。如果您想应用更通用的东西(例如示例中的重试),请使用带有“extends”关键字的 yml 锚点。这是两者的示例:
variables:
EVERY_JOB_VARIABLE: "hello world"
.anchor_retry:
retry:
max: 2
when:
- runner_system_failure
- stuck_or_timeout_failure
- scheduler_failure
- stale_schedule
- unknown_failure
build:
extends: .anchor_retry
script:
- echo $EVERY_JOB_VARIABLE # prints "hello world"
review:
extends: .anchor_retry
script:
- echo $EVERY_JOB_VARIABLE # prints "hello world"