【问题标题】:Hudson and maven-release-pluginHudson 和 maven-release-plugin
【发布时间】:2011-01-28 17:15:15
【问题描述】:

我正在使用带有 maven-release-plugin 的 Hudson。

如您所知,maven-release-plugin 分两步构建项目:release:prepare,然后是release:perform

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

【问题讨论】:

  • 为什么要通过 Hudson 发布?你想发布每个版本吗?
  • @Raghuram 他可能正在通过参数选择要发布的版本。

标签: java maven continuous-integration hudson maven-release-plugin


【解决方案1】:

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

【讨论】:

    【解决方案2】:

    简短的回答:不要。关闭更新(每次都进行干净的结帐)。 FWIW,根据我的经验发布:无论如何,回滚并不是非常可靠。

    【讨论】:

    • 如果上一个部署步骤在将具有新版本号的 pom 签入 VCN 后中断,则干净签出将无济于事。
    • 嗯 - 哪一步坏了?为什么会失败?
    • 我更愿意将这些问题的故障排除委托给您,因此我无法为您提供具体信息 ;-) 我知道我们发生过几次。然而,这是一个高度定制的 Maven 构建,所以一些额外的插件可能把它搞砸了,'虽然。
    • 我已经使用 Maven 大约 4 年了,我从来没有在执行过程中遇到过发布插件中断的情况。您可以做很多事情来自定义构建,这看起来是个好主意,但实际上是一件坏事(tm)。 :)
    【解决方案3】:

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

    【讨论】:

      猜你喜欢
      • 2012-02-02
      • 1970-01-01
      • 2011-06-10
      • 1970-01-01
      • 2014-03-10
      • 1970-01-01
      • 2018-06-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多