2016-08-11 65 views
0

我正在使用Jenkins-pipeline groovy脚本;但我必须在沙盒模式下工作。在沙箱模式下使用jenkins-pipeline搜索作业

有没有办法找到所有匹配命名模式的作业?

在非沙盒模式,可以写

def theJobs=Jenkins.instance.getAllItems(Job); 
    for(def i=0;i<theJobs.size;i++) 
    { 
     def jobName= theJobs[i].getName() 
     if(jobName.toUpperCase() =~ 'myregexp-pattern') 
     { ... 

但在沙盘这给安全性异常: RejectedAccessException:未分类领域的java.lang.Class实例

如何可以在同一效果是以沙箱兼容的方式实现的?

+0

我想你不能/不想使用管理功能'进程内脚本审批'手动批准特定的沙箱安全异常? – Pom12

+0

这甚至不会出现在批准列表中。 但在写这个回应我发现他的解决方案: 属性“。实例”永远不会出现在批准清单,所以我被阻止。 但是,方法“getInstance()”确实使其显示,因此我可以获得批准并继续。 – Andy

回答

1

使用方法“.getInstance()”而不是属性“.instance”使其显示在“脚本批准”列表中。一旦批准,脚本就会运行。