0

我有一个多模块 Maven 项目。

詹金斯的工作管道在我的例子中是这样的:

  1. 为变量版本注入环境变量
  2. 从 cvs 签出
  3. 通过 shell 编辑我的项目的 Version.properties 文件(使用注入的变量)
  4. 执行 mvn release:update-version 以更新 POM 版本(使用注入的变量)
  5. 项目清单
  6. 执行 mvn 构建
  7. 最后执行 CVS 标记(使用注入的变量)

但是现在 POM 和 Version.properties 的更改并没有在标签中更新。所以我的问题是,CVS 中标记了哪个工作区。我必须做什么才能在我的标签中包含版本更改?


感谢您的快速回复!

我在第 6 步(maven 构建)之后添加了一个 cvs 提交:

cvs commit -m "blabla"

结果是提交了更改,但在标签中仍然存在preversion。因此,我的问题是詹金斯正在标记哪个工作区。

  • 他是否使用詹金斯的工作区(我不这么认为,因为更改不存在)
  • 他是否使用了 cvs 的头部(在 cvs 提交后头部包含新版本,所以我认为詹金斯也不使用头部)
  • 他是否使用一些缓存的工作空间?
4

3 回答 3

1

您在第 6 步和第 7 步之间缺少 CVS 提交。

于 2013-02-12T09:31:09.940 回答
0

我在第 6 步(maven 构建)之后添加了一个 cvs 提交:

cvs commit -m "blabla"

结果是提交了更改,但在标签中仍然存在preversion。因此,我的问题是詹金斯正在标记哪个工作区。

  • 他是否使用詹金斯的工作区(我不这么认为,因为更改不存在)
  • 他是否使用了 cvs 的头部(在 cvs 提交后头部包含新版本,所以我认为詹金斯也不使用头部)
  • 他是否使用一些缓存的工作空间?
于 2013-02-13T06:15:46.793 回答
0

我通过以下方式解决了这个问题:

我使用的是 Jenkins CVS Tagging Plug-in v1.7

这个插件使用cvs rtag应该执行 cvs 头部标记的命令。但在我的情况下,成功提交新文件后对头部的标记标记了错误的文件(就像我在上一条评论中所说的那样)

现在我正在使用构建后的 shell 命令cvs tag(它标记 jenkins 工作区而不是 cvs 的头部)并且它工作正常!

于 2013-02-13T13:05:36.430 回答