【问题标题】:How to use an environment variable in a environment variable in a Jenkinsfile?如何在 Jenkinsfile 的环境变量中使用环境变量?
【发布时间】:2019-04-08 08:52:46
【问题描述】:

我想要一个环境变量 COMPOSE_PROJECT_NAME,其值为 denpal-4,用于构建 ID 为 4 的 Jenkins 作业。

environment {
  COMPOSE_PROJECT_NAME = 'denpal-$(BUILD_ID)'
}

另一种方法是在每个 sh-block 中写这个

sh ''' 
export COMPOSE_PROJECT_NAME = 'denpal-$(BUILD_ID)'
code...
'''

但是,这将违反 DRY(不要重复自己)原则。环境{}中的某些东西可能吗?

更新/回答:双引号而不是单引号修复了它。

【问题讨论】:

    标签: jenkins environment-variables jenkins-pipeline


    【解决方案1】:

    是的,你可以在环境阶段给变量赋值(使用env作为变量的前缀)然后可以在任何阶段使用它,请看下面:-

    environment {
               env.COMPOSE_PROJECT_NAME = "denpal-${BUILD_ID}"
            }
    

    【讨论】:

    • WorkflowScript: 12: 预期的字符串文字@第 12 行第 5 列。env.COMPOSE_PROJECT_NAME = 'denpal-${BUILD_ID}'
    • 双引号修复了它!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-02-02
    • 2014-09-30
    • 2023-03-14
    • 2018-12-25
    相关资源
    最近更新 更多