0
我想要实现的是:用户将选择一个环境,然后可以为该环境(URL,DB等)设置合适的env变量。 这可能吗? 我尝试了很多东西:在环境中插值,尝试在不同的地方定义环境地图,但没有运气。 我的环境映射变量在环境部分中不可访问,而且似乎对环境部分内部可以做些什么有一些限制,我得到的消息如下所示: 可以只与+连接,env var只能是值或函数调用。 我尝试了一些与这些提示变化,但仍然没有运气。使用Jenkins管道中的选项从嵌套地图定义env变量
def environments = [
TEST: [APP_URL: 'http://test'],
DEV: [ APP_URL: 'https://dev'],
QA: [ APP_URL: 'https://qa']
]
pipeline {
agent any
parameters {
choice(name: 'environment', choices: "${environments.keySet().join('\n')}")
}
stages {
stage ('Test') {
environment {
APP_URL = environments[params.environment]['APP_URL']
}
steps {
sh 'env'
}
}
}
}