我正在使用 Jenkins 中的可编辑电子邮件插件来附加电子邮件中的文件。问题是插件无法找到要附加的文件。
我的文件结构是这样的 -
ReportDirectory
工作区
ReportDirectory 包含我要附加的报告。我相信插件的基本目录是工作区。因此,我将附件位置指定为 ../ReportDirectory/DemoReport.html。我也试过 ReportDirectory/DemoReport.html
还有更多选择。难道我做错了什么?
我正在使用 Jenkins 中的可编辑电子邮件插件来附加电子邮件中的文件。问题是插件无法找到要附加的文件。
我的文件结构是这样的 -
ReportDirectory
工作区
ReportDirectory 包含我要附加的报告。我相信插件的基本目录是工作区。因此,我将附件位置指定为 ../ReportDirectory/DemoReport.html。我也试过 ReportDirectory/DemoReport.html
还有更多选择。难道我做错了什么?
我想到了。
Editable Email 插件使用 Ant 文件语法来定位附件。当我查看 Ant 文件语法 ( http://ant.apache.org/manual/dirtasks.html ) 的文档时,它说
通常,模式被认为是相对路径,相对于依赖于任务的基本目录( dir 的情况下的属性)。仅考虑在该基本目录下找到的文件。因此,虽然像 ../foo.java 这样的模式是可能的,但在应用时它不会匹配任何内容,因为从不扫描基本目录的父级文件。
由于本例中的基本目录是“工作区”,而我的目录“ReportDirectory”不在其中,因此 Ant 无法访问它。
存在两种解决方案:
@Amey - 感谢您的努力:)
另一种解决方案是$JENKINS_HOME/jobs/workspace/$workspace_name
使用您的$workspace_name
. 这种方式对我有用。
ReportDirectory/DemoReport.html
是正确的方法。
请记住,文件的路径和文件名区分大小写,因此我假设您输入了正确的名称。
另一件事是检查报告是否实际创建并位于您提到的路径中。
您可以尝试的另一件事
ReportDirectory/*
简单的答案:将您的文件复制到工作区(复制到您的工作目录),然后在附件下,只提供文件名,不带任何引号或任何内容。这将自动告诉詹金斯拿起你的文件。而已!请不要在看到所有配置后感到困惑。
Jenkins 将使用其工作区中可用的目录。
您可以发送多个附件,如下所示。
报告文件夹/html/index.html、screenShotsFolder/screenShots/*.jpg