如何解决无法访问Jenkins inputstep输出变量
我试图在一个输入步骤中从用户那里获得多个答案,并打算在when步骤中基于用户答案跳过阶段。但是,这带来了一个问题,詹金斯抛出了脚本异常org.jenkinsci.plugins.scriptsecurity.sandbox.RejectedAccessException: Scripts not permitted to use 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',choice(name: 'release_type',choices: 'final\nrc\nmilestone',description: 'What is the release type?')
]
}
}
}
stage("Display details") {
steps {
echo env.stage_details['release_approved']
}
}
}
}
还请注意,管道在沙箱中运行时。据https://issues.jenkins-ci.org/browse/JENKINS-28178
报道,使用scm Jenkinsfile的多分支管道也存在此问题不幸的是,管理员批准这不是我的选择。简而言之,input
步骤具有多个参数,甚至对于管理员无法批准脚本执行的我来说是一个可行的选择?
我正在运行Jenkins 2.235
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。