Jenkins pipeline create directory
Just use a file operations plugin.
fileOperations([folderCreateOperation('directoryname')])
What you can do is use the dir
step, if the directory doesn't exist, then the dir
step will create the folders needed once you write a file or similar:
node {
sh 'ls -l'
dir ('foo') {
writeFile file:'dummy', text:''
}
sh 'ls -l'
}
The sh
steps is just there to show that the folder is created. The downside is that you will have a dummy file in the folder (the dummy write is not necessary if you're going to write other files). If I run this I get the following output:
Started by user jon
[Pipeline] node
Running on master in /var/lib/jenkins/workspace/pl
[Pipeline] {
[Pipeline] sh
[pl] Running shell script
+ ls -l
total 0
[Pipeline] dir
Running in /var/lib/jenkins/workspace/pl/foo
[Pipeline] {
[Pipeline] writeFile
[Pipeline] }
[Pipeline] // dir
[Pipeline] sh
[pl] Running shell script
+ ls -l
total 4
drwxr-xr-x 2 jenkins jenkins 4096 Mar 7 22:06 foo
[Pipeline] }
[Pipeline] // node
[Pipeline] End of Pipeline
Finished: SUCCESS