小编典典

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

jenkins

这是我的开发配置:

在Subversion下,

-我有我的project_X / trunk(带有我的最新开发者),
-我有我的project_X / tags(带有不同版本),
-我正在考虑添加一个分支文件夹。

我正在使用Jenkins使用Ant脚本来构建我的project_X /
trunk。我的Ant脚本做了很多事情,包括签出,编译,创建带有图形的文档,运行单元测试,执行pmd,创建jar以及压缩所有内容。

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

最简单的方法是什么:

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

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

希望

预先感谢您的帮助,
最诚挚的问候,


阅读 205

收藏
2020-07-25

共1个答案

小编典典

您应该通过标签/分支名称对构建进行参数化。要做到这一点,最简单的方法是将一个参数(比如,添加 SVN_BRANCH_DIR
)到您的詹金斯工作,这将有值,例如trunkbranches/branch1tags/sometag

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

2020-07-25