jenkins - 如何在 Jenkinsfile 的环境变量中使用环境变量?
问题描述
我想要一个环境变量 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(不要重复自己)原则。环境 {} 中的某些东西可能吗?
更新/回答:双引号而不是单引号修复了它。
解决方案
是的,您可以在环境阶段将值分配给变量(使用env作为变量的前缀),然后可以在任何阶段使用它,请参见下文:-
environment {
env.COMPOSE_PROJECT_NAME = "denpal-${BUILD_ID}"
}
推荐阅读
- python - 我遇到了一个小计时器错误
- python - 将多个小 DataFrame 合并为一个大 DataFrame
- reactjs - 将数据动态传递给 HOC,这些数据应该不在每次初始化都不应该发生的组件之外
- javascript - 图像在 iOS 模拟器中显示正常,但是当我打开 android 模拟器时.. 一切都搞混了.. 我应该怎么做才能解决这个问题?
- r - 无改进后退出模型拟合
- spring-boot - 如何设置 Spring 配置文件以部署到 Heroku
- java - 圣诞树显示不正确
- sql-server - 当@OneToOne ID 值不存在时,如何停止 Spring 数据 JPA 给出错误?
- python - 尽管将 Python multiprocessing.Lock 作为目标函数参数传递,但在并行化时为无
- amazon-web-services - AWS DMS 更改处理 - 批处理行为