我在Jenkins有一些工作,它将源代码树中的工件存档为另一个工作(某些单元测试或类似工具)。我有目前的情况:
top_dir
\scripts_dir
\some_files
\dir1
\dir2
\dir3
\other_dir
我想存档“top_dir”中的所有内容,包括“scripts_dir”中的文件,但不存档子目录“dir1,dir2,...”,我不知道名称,位于“scripts_dir”中。这些子目录实际上是Windows目录关节,指向磁盘上的其他位置,我不希望它们被复制。
如何使用Jenkins的inculde / exludes模式实现这一目标?
我已经尝试过,包括= top_dir /,exclude =
**/scripts_dir/*/
**/scripts_dir/*/**
**/scripts_dir/**/*
但它总是排除整个“scripts_dir”文件夹。
答案 0 :(得分:2)
最后,通过使用暴力,我发现以下表达式确实排除了scripts_dir
子目录中的所有文件(无论是否符号),然后删除这些子目录,同时将文件直接保存在{{ 1}}:
scripts_dir
无论如何,谢谢你的帮助。
答案 1 :(得分:0)
阅读ANT manual,其中followsymlinks
属性默认为true。你说那些你要排除的东西是符号链接(虽然我不确定这是否适用于Windows关节)。尝试添加followsymlinks=false
另一种解决方案:如果scripts_dir
下的所有文件在扩展名中都有一定数量的字符,您可以将其放入include语句中。这只会传输扩展名为3个字符的文件:
**/scripts_dir/*.???
有关此here