【问题标题】:Publish files/artifacts for failed/broken build in Hudson?在哈德逊发布失败/损坏构建的文件/工件?
【发布时间】:2009-12-22 22:48:23
【问题描述】:

无论成功/失败,我都想为每个构建发布某些文件。就我而言,我想发布从我们已经实现的 JUnit RunListener 实现生成的报告,但是我也发现发布其他日志文件以及我感兴趣的任何其他特定文件很有用。

我知道 TeamCity 开箱即用。哈德森可以吗? DocLinks 插件和“存档工件”复选框似乎只适用于成功构建。

提前致谢

【问题讨论】:

  • 我确实看到了这篇文章,并同意该解决方案似乎是该帖子的副本。但是,问题不是重复的-有点简单,因为我不在乎 % 通过什么,所以我认为值得提出这个问题,以防万一可能有一个简单的解决方案;-)

标签: build hudson publish


【解决方案1】:

即使构建失败,“归档工件”功能也会启动。如果没有,我认为这是一个严重的错误。您使用的是哪个版本的 Hudson?

【讨论】:

  • 非常感谢 - 我的疏忽。我以为我在某处读到它不会对失败的构建执行此操作。我已经启用了这个选项,它完全按照我的意愿工作。谢谢!
【解决方案2】:

到目前为止,我认为 Hudson 在运行 junit 测试时会将作业标记为不稳定而不是失败。

但是,如果您不想创建自己的插件,则可以使用解决方法。基本思想是向 Hudson 隐藏最初的失败,并在告诉 Hudson 存在问题之前做任何需要做的事情。

有不同的方法。

  1. 始终向 Hudson 隐藏错误,作业永远不会失败,但是,报告将始终发布。缺点是,您需要监控作业/报告,因为 Hudson 不会告诉您存在问题。

  2. 在 Hudson 之外捕获错误,而不是在 Hudson 之外发布,然后告诉 Hudson 存在错误,让 Hudson 完成其余的工作。

【讨论】:

  • 谢谢你的回答,彼得。如果没有您建议的修复程序,看起来没有什么是开箱即用的。我会进一步研究您建议的选项,在最坏的情况下,只需将报告放在最后一个构建的目标目录中,然后告诉人们自己 scp 它。
  • 您始终可以直接链接到最新版本和最新版本报告,而无需发布版本号,例如http:///job//lastBuild/testReport
猜你喜欢
  • 1970-01-01
  • 2010-12-18
  • 1970-01-01
  • 2022-10-24
  • 1970-01-01
  • 2019-08-30
  • 1970-01-01
  • 2011-05-17
  • 2012-05-24
相关资源
最近更新 更多