我正在使用Jenkins的Copy to Slave插件,我想将一些工件复制回主节点工作区。我正在关注(Ant -- copying files and subdirectories from only one subdirectory on a tree中的信息。问题是它是一个Node应用程序,所以嵌套的目录很多,并且有些具有相同的名称,并且通过使用ant文件集命名法,我得到了从属服务器上的所有子目录回到符合该模式的主节点。
因此,要给出更详细的说明,
workspace
\--dir_a
\--dir_b
|
\--dir_c
|
\--dir_d
\--dir_e
\-- file_1
\-- file_2
\--dir_f
|
\--dir_b
\-- file_3
您会注意到dir_b列出了两次,直接在工作空间中列出,而且在工作空间/ dir_f / dir_b中也列出了两次。我想要的只是递归地提供一个特定的目录,所有文件及其子目录:
workspace/dir_b
因此,如果我使用“将文件复制回主节点上的作业”工作区,并指定:
**/dir_b/**
我都得到了
workspace/dir_b/ and all it's files and subdirs
workspace/dir_f/dir_b and all it's files and subdirs
那么,如何编写文件集以仅获取一个特定的子目录及其内容?
我也尝试使用
*/dir_b/**
但是什么也没回来。
尝试这样做似乎更近
dir_b/**
但是它只给了我dir_b,它是文件,而不是子目录或其文件(尽管这对我来说没有意义)。事实证明这确实可行。我曾期望子目录/文件在重新运行时具有新的时间戳,但事实并非如此。因此,我删除了该目录/文件并重新运行,然后重新创建了子目录/文件。
帮助!?