无法访问Jenkins inputstep输出变量
我试图在一个输入步骤中从用户那里获得多个答案,并打算在基于用户答案的when步骤中使用它来跳过阶段。然而,这带来了一个问题,Jenkins抛出了一个脚本异常无法访问Jenkins inputstep输出变量,jenkins,jenkins-pipeline,Jenkins,Jenkins Pipeline,我试图在一个输入步骤中从用户那里获得多个答案,并打算在基于用户答案的when步骤中使用它来跳过阶段。然而,这带来了一个问题,Jenkins抛出了一个脚本异常org.jenkinsci.plugins.scriptsecurity.sandbox.RejectedAccessException:脚本不允许使用staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods getAt java.lang.Object 下面是一个简单的声明性
org.jenkinsci.plugins.scriptsecurity.sandbox.RejectedAccessException:脚本不允许使用staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods getAt java.lang.Object
下面是一个简单的声明性管道来重现这个问题
pipeline {
agent any
stages {
stage("Collect stage details") {
steps {
script {
env.stage_details = input message: 'User input required', ok: 'Release!',
parameters: [
booleanParam(name: 'release_approved', choices: 'patch\nminor\nmajor', description: 'What is the release scope?'),
choice(name: 'release_scope', choices: 'patch\nminor\nmajor', description: 'What is the release scope?'),
choice(name: 'release_type', choices: 'final\nrc\nmilestone', description: 'What is the release type?')
]
}
}
}
stage("Display details") {
steps {
echo env.stage_details['release_approved']
}
}
}
}
还请注意,当管道在沙箱中运行时。据报道,带有scm Jenkins文件的多分支管道也存在此问题
不幸的是,管理员批准这不是我的选择。简单地说,如果管理员不能批准脚本执行,那么带有多个参数的input
步骤对我来说是可行的选择吗
我是詹金斯2.235