首页 文章

Jenkins:Generatin链接到HTML文件并通过电子邮件发送

提问于
浏览
0

我在Linux服务器上有一个Jenkins工作,它运行自动化测试并生成结果报告 . 每次作业运行时,都会在工作区中创建一个新目录,并将最新的HTML结果报告及其所有需要的资源放在该目录中 . 最新HTML测试结果文件的路径将是(来自工作区根目录):. . Expando_BLEG / Results / /Execution_Result.html .

每次Jenkins作业运行时,我都想发送一封电子邮件,其中包含指向最新测试结果HTML文件的链接 . 该链接将在电子邮件的正文中 . 使用Email-Ext插件中的Jelly脚本执行此操作的方法是什么?每次运行作业时,Jelly脚本都必须生成不同的链接,因为最新的测试结果HTML文件每次都在不同的目录中 .

1 回答

  • 0

    现在我知道这不是你问题的直接答案 . 但我确实认为这可以很好地解决您的问题 . 此解决方案将比您提出的解决方案有2个额外的好处 .

    它的唯一先决条件是您或团队/项目中的某个人能够更改测试结果的输出目录 .

    要使其工作,请将测试结果和其他资源的输出目录更改为静态文件夹 . 在每次测试运行开始时,确保清除此文件夹 . 通过删除所有文件的shell命令,或删除所有未版本控制文件的SVN / GIT clean .

    然后,您可以使用HTML发布者插件:https://wiki.jenkins.io/display/JENKINS/HTML+Publisher+Plugin . 使用此选项通过将Jennes作业中的测试结果指向静态位置来发布HTML . 确保在发布选项中检查存档html页面 . 这将确保HTML将存储在作业的特定构建中 . 如果需要归档其他资源,可以使用归档工件后构建步骤执行此操作 .

    现在,所有结果和资源都缓存在特定的构建运行中,您需要做的就是使用邮件扩展插件中的$ BUILD_URL添加运行链接 .

    正如我所说,这有两大好处 . 首先,所有测试资源都与特定的测试运行硬链接 . 如果您将结果放在一个单独的位置,那么随着时间的推移,将它们链接到特定的运行将变得越来越难 .

    第二个好处是您的资源将遵循特定运行的生命周期 . 如果您需要一些物品留在那里,您的主工作区通常很难清理 . 这可能会导致您的工作区随着时间的推移而增大 . 当您在作业中存档所有资源时,将在删除构建时清除所有资源 . 这可以在作业配置中轻松配置 .

相关问题