As you know, in Shared libraries in Jenkins, it is possible to load a resource (located in resources folder) by doing:
libraryResource("script.sh")
Now my use case is that I want to load number of files inside a folder under resources :
+ resources
+ teamA
+ script1.sh
+ script2.sh
And I want to load all those files before doing anything :
I did a method in the shared library:
new File(scriptsFolder).eachFile() { file->
writeFile([file:"${env.workspace}/${file.getName()}",text:libraryResource("$scriptsFolder/${file.getName()}")])
sh("chmod +x ${env.workspace}/${file.getName()}")
}
where scriptsFolder= "teamA"
Of cource I'm getting java.io.IOException: Is a directory
Because libraryResource
must get a file path parameter.
So is, there a way to load all those files without knowing their names or their number?
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…