gpt4 book ai didi

gitlab - 使用 $CI_JOB_ID 作为 Gitlab 管道多个阶段的常量

转载 作者:行者123 更新时间:2023-12-03 08:07:44 30 4
gpt4 key购买 nike

我有以下内容

stages:
- stage1
- stage2
variables:
     MY_ENV_VAR: env_$CI_JOB_ID
stage1_build:
stage: stage1
script:
- echo $MY_ENV_VAR
stage2_build:
stage: stage2
script:
- echo $MY_ENV_VAR

我在两个阶段中得到不同的 $MY_ENV_VAR 值(这意味着 $CI_JOB_ID 在每个阶段都会发生变化)。

我想要的是使用 $CI_JOB_ID 的一个值设置 $MY_ENV_VAR 一次,并将其设为常量,以便 $MY_ENV_VAR 具有相同的值 code> 用于所有阶段。

最佳答案

使用 $CI_PIPELINE_ID instaed,该值在管道中的所有作业中保持不变。

variables:
MY_ENV_VAR: env_$CI_PIPELINE_ID

参见predefined environment variables以供其他引用。

如果您确实希望在一个作业中创建环境变量并在管道的其余部分中保留,则可以使用 artifacts:reports:dotenv 在作业之间传递变量。

stages:
- stage1
- stage2

set_env:
stage: .pre
script:
echo "MY_ENV_VAR=env_$CI_JOB_ID" > .myenv
artifacts:
reports:
dotenv: .myenv

stage1_build:
stage: stage1
script:
- echo $MY_ENV_VAR
stage2_build:
stage: stage2
script:
- echo $MY_ENV_VAR

关于gitlab - 使用 $CI_JOB_ID 作为 Gitlab 管道多个阶段的常量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71682819/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com