jenkins pipline:如何从工作区获取文件列表?

时间:2017-08-30 13:20:46

标签: jenkins groovy parameters jenkins-pipeline

在jenkins文件中,我想获取工作空间目录中的文件列表并将它们放在参数中。 我尝试过:

stage('select'){
    def workspace = pwd()
    files = []
    new File  ("$workspace/buildFile").eachFile(FileType.FILES) { files << it.name }

    BuildFile = input( id: 'userInput', message: 'Sélectionner un backup', parameters: [ [$class: 'ChoiceParameterDefinition', choices: files , description: 'Properties', name: 'param'] ])   
}

但是我收到消息错误&#34; java.io.FileNotFoundException:&#34;

1 个答案:

答案 0 :(得分:4)

问题是管道脚本是在主服务器上执行的,因此当您执行new File(...)时,您在主服务器上创建文件指针而不是从服务器/节点/代理工作空​​间上下文。相反,您应该使用findFiles中提供的Pipeline Utility Steps plugin