我正在尝试将Jenkins用作自动化构建的工具。 所以,我需要创建一个带参数的pipline,帮助我选择一个合适的目录来启动构建批处理文件。 到目前为止,我已经找到了如何通过使用Extensible Choice插件选择目录作为参数。 但它允许我在一个级别选择一个文件夹,但我需要更深入,并通过多级目录级别选择机会。 例如,选择level1和level2处的目录,以及level3处的finaly。 你能否告诉我如何做到这一点?
答案 0 :(得分:0)
在管道作业中使用groovy脚本动态分配目录
答案 1 :(得分:0)
感谢。我试图找到任何类似的代码或插件示例,但是没有成功。 所以,我决定基于标准的groovy语法来做到这一点。这是代码:
node {stage "Directories list output"
def dirname = getdirlist()
echo dirname}
import java.io.File;
import java.io.IOException;
import javax.swing.JFileChooser;
@NonCPS
def getdirlist() {def initialPath = System.getProperty("user.dir");
JFileChooser fc = new JFileChooser(initialPath);
fc.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
int result = fc.showOpenDialog( null );
switch ( result ){case JFileChooser.APPROVE_OPTION:
File file = fc.getSelectedFile();
def path = fc.getCurrentDirectory().getAbsolutePath();
def outputpath="path="+path+"\nfile name="+file.toString();
break;
case JFileChooser.CANCEL_OPTION:
case JFileChooser.ERROR_OPTION:
break;}
return outputpath}
我无法使其发挥作用。我怀疑Jenkins管道不允许打开标准的Java文件对话框。什么可以成为我的任务的另一个方法?