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'
}
}
}
}