繁体   English   中英

文件集中单个文件的Ant绝对路径

[英]Ant absolute path to single file in fileset

我正在使用带有Email-Ext插件的Jenkins来自动执行PHP单元测试。 如果测试失败,我想向自己发送一封通知电子邮件,其中包括压缩的测试报告。

Email-Ext插件在附件字段中需要Ant文件集定义。 压缩的测试报告可以在这里找到:

D:\Test_Reports\test-report-failed.zip

我找不到在单个文件的绝对路径下使用fileset的有效示例。

我尝试了以下操作,但没有成功:

<fileset file="D:\\Test_Reports\\test-report-failed.zip" />

可以找到使用绝对路径但仅使用相对路径的任何示例。

这是Email-ext插件提供的有关附件字段的官方帮助:

This is the set of attachments that will be used for the email. The format is a comma separated list of Ant include file syntax. The base directory is the workspace.

您可以使用<include/>标记执行此操作。 它看起来像这样。

<fileset dir="D:\Test_Reports">
    <include name="test-report-failed.zip" />
</fileset>

如果您想获取属性中的文件路径,则可以采用这种方式(我已经对此进行了测试并且可以正常工作):

<path id="absolute.path.id">
    <fileset dir="D:\Test_Reports">
        <include name="test-report-failed.zip" />
    </fileset>
</path>
<property name="absolute.path" value="${toString:absolute.path.id}" />
<echo>file absolute path: ${absolute.path}</echo>

只需在附件字段(而不是XML元素)中指定文件的绝对路径即可。

我通过将Jenkins Job的工作空间更改为测试报告和其他资源所在的目录来解决此问题。 然后,我对zip文件使用了相对寻址,例如: test-report-failed.zip

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM