在使用Ant/Jenkins时,如何检查同一Java项目的不同Subversion标记/分支?

Ala*_*ain 4 java svn jenkins svn-checkout

这是我的开发配置:

在Subversion下,

- 我有我的project_X/trunk(使用我的最新开发),
- 我有我的project_X /标签(有不同的版本),
- 我正在考虑添加一个分支文件夹.

我正在使用Jenkins使用Ant脚本构建我的project_X/trunk.我的Ant脚本执行很多操作,它可以检出,编译,使用图形创建文档,运行单元测试,执行pmd,创建jar并压缩所有内容.

我希望能够在同一个项目的标签或分支(以及主干)上使用我的Ant脚本.

最简单的方法是什么:

我认为这只是检查Subversion存储库的正确路径的问题,对吗?

- 如果我是正确的,我应该建立Subversion动态的路径.
- 在我的Ant脚本中,我的Subversion路径应该是变量吗?
- 如何从Jenkins的界面传递路径值?
- 是否有一个插件可以让我将Jenkins的Subversion路径值传递给Ant脚本?
- 或者我应该在Jenkins中创建一个新工作(使用相同的脚本但路径不同)?

希望

在此先感谢您的帮助,
祝您好运,

mal*_*cot 5

您应该按标记/分支名称参数化您的构建.要做到这一点,最简单的方法是将一个参数(比如,添加SVN_BRANCH_DIR)到您的詹金斯工作,这将有值,例如trunk,branches/branch1,tags/sometag.

现在,如果您使用Jenkins ANT构建步骤,该参数将作为属性自动传递到您的ANT脚本(通过ANT -D选项).所以你可以使用${SVN_BRANCH_DIR}它(例如svn://myserver/myrepo/${SVN_BRANCH_DIR}).