我在Jenkins pipeline脚本中使用if else返回函数的多个参数时遇到了错误。下面是我的测试管道。
def envi, host
def build_func(envi, host){
if (env.ENVIRONMENT == 'dev') {
envi = 'dev'
host = 'devhost'
}
else if(env.ENVIRONMENT == 'prod') {
envi = 'prod'
host = 'prodhost'
}
return [envi, host]
}
pipeline {
agent any
environment {
def (envir,hostname) = build_func(env,host)
}
stages {
stage('Hello') {
steps {
echo "Hello World\n${envir}\n${env.ENVIRONMENT}"
}
}
}
}
当我构建这个时,得到下面的错误,
异常错误:启动失败:工作流脚本:18:第18行第7列需要字符串文字。def(环境,主机名)= build_func(环境,主机)
1条答案
按热度按时间mftmpeh81#
我不认为你可以在
environment
块中返回多个值并创建这样的环境变量。