首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jenkins:groovy沙箱不允许使用jenkins.model.Jenkins getInstance

jenkins:groovy沙箱不允许使用jenkins.model.Jenkins getInstance
EN

Stack Overflow用户
提问于 2019-06-18 23:50:41
回答 1查看 1K关注 0票数 0

我已经在我的deploy_job中提供了一个groovy脚本来获得我的build_job的成功构建。当我运行groovy脚本时,它给出了一个错误“不允许脚本使用staticMethod jenkins.model.Jenkins getInstance”

我只能通过使用groovy沙箱来运行脚本。我没有管理员权限来批准脚本或在进行任何更改后重新启动jenkins。我尝试使用try和catch块来捕获异常,但它不起作用。有没有办法将实例方法列入白名单?

代码语言:javascript
复制
def builds = []
def job = jenkins.model.Jenkins.instance.getItem("build_job")
job.builds.each {
def build = it
if (it.getResult().toString().equals("SUCCESS")) {
    it.badgeActions.each {
             builds.add(build.displayName[1..-1])
}
   }
    }
builds.unique();

预期:要将jenkins.model.Jenkins.instance.getItem列入白名单

实际:无法执行不允许在org.jenkinsci.plugins.scriptsecurity.sandbox.whitelists.StaticWhitelist.rejectStaticMethod(StaticWhitelist.java:276)上使用staticMethod jenkins.model.Jenkins getInstance的脚本org.jenkinsci.plugins.scriptsecurity.sandbox.RejectedAccessException:脚本

EN

回答 1

Stack Overflow用户

发布于 2021-02-11 06:47:29

在manage Jenkins中,转到In-Process Script Approval。将会有一个等待批准的脚本和签名列表。批准您尝试使用的那些。对于每个步骤,您可能需要多次执行此操作。您可以对getInstance执行此操作,但运行失败,然后对getItem再次执行此操作,直到它清除为止。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56652861

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档