Hudson和maven-release-plugin

10

我在使用Hudson结合maven-release-plugin

正如您所知,maven-release-plugin需要分2步执行: release:prepare, 然后是release:perform

如果release:perform失败了, 我该如何配置Hudson来执行release:rollback呢?


为什么你想通过Hudson进行发布?你想要发布每个构建吗? - Raghuram
@Raghuram 他可能会通过参数选择要发布的构建。 - despot
3个回答

9

在Hudson/Jenkins中执行发布的标准方式是使用Jenkins M2 release plugin。它包装了maven发布插件并自动化其执行。


0
如果这是绝对必要的,那么您应该能够执行“调用顶级Maven目标”构建步骤,在其中调用release:prepare和release:perform,并通过“执行系统Groovy脚本”构建步骤捕获此构建的结果。
请查看此处如何检查pom.xml的版本(这可能会让您知道perform是否失败)。

0

简短回答:不要这样做。关闭更新(每次进行干净的检出)。就我个人经验而言,release:rollback 也不是非常可靠。


如果之前的发布步骤在将带有新版本号的pom提交到VCN后出现故障,那么干净的检查不会有所帮助。 - Joachim Sauer
哦,是哪一步出了问题?为什么它失败了? - Will Iverson
我更喜欢委托解决这些问题,所以我不能给你具体细节;-) 我知道我们遇到过几次。然而,那是一个高度定制的Maven构建,因此一些额外的插件可能会搞砸它。 - Joachim Sauer
1
我现在已经使用Maven约4年了,而且我从来没有遇到过发布插件在执行期间出现故障的情况。有许多可以定制构建的事情可能看起来很不错,但实际上是一个坏主意。 :) - Will Iverson

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接