你可以做的是使用dir
一步,如果该目录不存在,那么dir
一步将创建所需的文件夹,当你写一个文件或类似:
node {
sh 'ls -l'
dir ('foo') {
writeFile file:'dummy', text:''
}
sh 'ls -l'
}
的sh
步骤是只是为了表明FO lder被创建。缺点是您将在文件夹中有一个虚拟文件(如果您要写入其他文件,虚拟写入不是必需的)。如果我运行这个,我得到以下输出:
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
谢谢@Jon S. Helpfull。 – black4bird
感谢您的回答,遗憾的是文档中未提及此行为 – Hoall