詹金斯常规的安全问题

时间:2017-05-30 15:16:08

标签: security jenkins groovy jenkins-pipeline

我正在尝试将所有文​​件与过滤器匹配。这是我的代码:

import static groovy.io.FileType.FILES
node {
    try{

        stage('get files')
        new File('.').eachFileRecurse(FILES) {
                if(it.name.endsWith('.nuspec')) {
                    echo it.Name
                }
            }
    }catch(err) {
        echo 'Err: Incremental Build failed with Error: ' + err.toString()
    }finally { 

    }

我收到以下错误:

Err: Incremental Build failed with Error: org.jenkinsci.plugins.scriptsecurity.sandbox.RejectedAccessException: Scripts not permitted to use new java.io.File java.lang.String

我已检查过没有待处理的脚本批准。 我找不到任何禁用沙盒的选项。

当我在脚本控制台中尝试脚本时,脚本运行正常。 如何允许脚本在我的构建上运行? 谢谢!

1 个答案:

答案 0 :(得分:1)

https://jenkins.io/doc/pipeline/steps/pipeline-utility-steps/#findfiles-find-files-in-the-workspace

def files = findFiles(glob: '**/*.nuspec') 
echo "${files[0].name} ${files[0].path} ${files[0].directory} ${files[0].length} ${files[0].lastModified}"