我想通过SCP创建一个文件集进行部署。到目前为止,这么好,正在部署文件,但是:
我只想部署具有动态名称的文件夹的文件和子文件夹。
我的目录树是:
Source Files
|_ _target
|_ <timestamp>-package
|_ css
|_ img
|_ js
|_ index.php
|_ css
|_ scss
|_ img
|_ config.rb
[...]
我只想部署
的文件和子文件夹_target | <timestamp>-package
所以我声明了文件集
<fileset id="fileset:deployment" dir="${basedir}/_target">
<include name="**/**" />
</fileset>
如您所见,“_ target”的子文件夹有一个动态名称,因为它包含一个时间戳(它使用不同的ant目标创建)。 SCP现在部署整个文件夹“timestamp-package”,但我想只部署文件和子文件夹IN。有没有办法实现这个目标?
答案 0 :(得分:0)
可能有几种方法可以做到这一点。我假设你在构建时只有一个<timestamp>-package
目录,否则你会有歧义。
这是一种方法。使用<dirset>
任务确定<fileset>
的正确父目录:
<dirset id="src.dir" dir="_target">
<include name="*-package" />
</dirset>
然后将其用作dir
的{{1}}属性的一部分:
<fileset>