繁体   English   中英

开发Jenkins post-build插件

[英]Developing Jenkins post-build plugin

我目前正在开发一个简单的插件,可以从Jenkins构建中检索结果。 我正在扩展Notifier并使用build.getResults()来获取信息。 但是,当我上传我的插件时,我无法将其设置为后构建操作。
当我运行我的构建时,它们会在build.getResults()上中断,因为我在构建仍在运行时尝试获取结果。

我该怎么做才能正确获得构建结果?

最好的方法是查看使用Notifier扩展点的现有插件 (单击以展开实现插件列表)。

检查您是否具有Descriptor实现(内部)类以及config.jelly。 还要检查jenkins.out和jenkins.err日志中的任何异常(例如malformed config.jelly)。

编辑:实际上,这个插件的Notifier子类看起来很简单,因为Notifiers去了: https//wiki.jenkins-ci.org/display/JENKINS/The+Continuous+Integration+Game+plugin ,特别参见它的GamePublisher.java和相应的config.jelly ,它是GameDescriptor.java ,它已经成为一个完整的外部类(通常描述符是内部类)。 此外,如果你想要选择Jenkins的全局配置,你需要一个global.jelly ,但是如果你没有这样的选项,那就是你可以省略的东西(不像config.jelly,你必须拥有Notifier,即使它是空的,就像这里一样)。

作为一般说明,当事情不起作用时,它可能真的很烦人,你没有得到任何错误,你的东西只是Jenkins没有显示...如果你只想让事情适合你,使用Groovy构建步骤可能更容易,但如果你想让其他人工作,那么做一个体面的完整插件可以减少支持请求。

由于这听起来很简单,你确定需要一个插件吗? 看一下使用Groovy Postbuild步骤 ; 他们写起来容易得多。 链接中有一些很好的用法示例。 如果您确定需要插件,请查看是否可以扩展现有插件而不是编写自己的插件; 这是一种更容易理解Jenkins插件编写的细节。

暂无
暂无

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

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