【问题标题】:Release Management - Maven, Bamboo and JIRA发布管理 - Maven、Bamboo 和 JIRA
【发布时间】:2011-11-11 05:18:42
【问题描述】:

我想找到使用 Maven 2、Bamboo 3.1 和 JIRA 4.3 管理版本的最佳方法。我已经尝试了很多东西,但由于错误或缺少功能,我一直处于死胡同。

我的最终目标是让版本来自 JIRA,让 Bamboo 获取这些版本并使用 Maven 从它们构建人工制品,然后将这些人工制品部署到存储库(在我们的例子中是 Nexus)。

以下是我尝试过的方法:

1) 在项目版本的所有 pom 中使用占位符:

家长会

<project ...>
  <groupId>group</groupId>
  <artifactId>parent</artifactId>
  <version>${ci.version}</version>
  ...
  <modules>...</modules>
</project>

儿童绒球

<project ...>
  <parent>
    <groupId>group</groupId>
    <artifactId>parent</artifactId>
    <version>${ci.version}</version>
  </parent>
  <artifactId>child</artifactId>
  ...
</project>

如果您从项目根 pom 开始构建并在命令行上指定 -Dci.version=&lt;my-version&gt;,则会构建。将它与Bamboo Release Management Plugin 结合起来,我可以构建和部署我的模块版本并根据需要发布。

这种方法的问题是 Maven 在部署或安装时不会替换 poms 中的占位符变量,这意味着存储库中的 pom 具有 ${ci.version} 标记,而我真的希望它们具有具体版本。由于占位符,这意味着没有人可以使用我部署的模块。见MNG-2971

2) 在 pom 中使用具体的 SNAPSHOT 版本,并使用 Bamboo 发布管理插件配置竹子以执行 Maven Release Plugin

不幸的是,Maven Release Plugin 需要增加版本,bamboo 插件允许您获取要构建的当前版本的名称,但不能获取下一个版本的名称。如果没有这些信息,使用 Maven 发布插件会将版本增加到不受 JIRA 管理的内容。为了使这个选项起作用,我需要下一个可用的版本,或者能够在 Bamboo 发布管理插件完成后运行计划(第二个修复也会像你一样给提交日志添加额外的混乱为自动增量获取一个提交,为正确增量获取一个提交)。

2.b) 与 2) 相同,但您必须在 Bamboo 中通过计划配置界面指定下一个版本,然后手动将值设置为计划应该使用的下一个 JIRA 版本。这解决了 2) 的问题,但增加了额外的手动步骤。

3) 手动操作,可能使用 Maven 发布插件。完全忽略 Bamboo 中的所有发布功能,并通过调用 Maven Release Plugin 目标在需要时更改版本在命令行上手动管理发布。发生这种情况时,也需要手动发布 JIRA 版本。我们还需要配置一个竹子构建来运行和测试发布插件为非 SNAPSHOT 版本创建的标签。

这个选项涉及的过程太多,肯定会出错。

我不可能是唯一一个尝试使用这些技术自动发布的人,谁能帮忙。

谢谢

【问题讨论】:

    标签: maven-2 jira release-management maven-release-plugin bamboo


    【解决方案1】:

    马特,

    您必须在目标中指定 -Dci.version={bamboo.custom.brmp.name} 当我在寻找完全相同的信息时,我偶然发现了你的问题,但是对于 JIRA 4.4 和 Bamboo 3.3,发布管理插件已被 JIRA Bamboo 插件替换/升级...

    希望对你有帮助,

    弗朗西斯

    【讨论】:

    • 感谢您的回复。事实证明,这种方法不适用于项目之外的可重用组件,因为虽然将部署正确版本的人工制品,但 pom 最终会使用占位符而不是具体版本。所以父引用有 ${ci.version} 使得 pom 在父项目之外无法使用。最后,我选择了固定快照版本和从竹子作业中显式调用的 Maven 版本插件的组合,以将版本更改为所需的版本。
    猜你喜欢
    • 2018-01-31
    • 1970-01-01
    • 2017-07-06
    • 1970-01-01
    • 1970-01-01
    • 2012-06-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多