Jenkins:使用子项目构建项目的最佳方式

Mic*_*ael 5 java jenkins

我们在同一个SVN存储库中有一个包含两个子项目的项目.例如:

svn://ip/svn/ trunk/subproject1
svn://ip/svn/ trunk/subproject2
Run Code Online (Sandbox Code Playgroud)

项目的构建应包括两个子项目的构建结果.为了使我们的构建更快,我想分别在SVN被更改时(在svn:// ip/svn/trunk/subproject1中)运行subproject1的构建.对于子项目2也是如此

最好的方法是什么?我可以用一份工作吗?在这种情况下,我应该如何定义构建触发器?

或者我需要定义3个工作:每个子项目一个或每个项目一个?

任何帮助将不胜感激!最好的问候,迈克尔

ben*_*ape 9

使用Jenkins可以通过多种方式实现此目的.

  1. 多SCM插件将允许-顾名思义-包括在单个作业多个源存储库.

  2. 您可以定义n相互触发的作业(即彼此依赖).你可以在Build Triggers> 下找到这个Build after other projects are built.

  3. 还可以选择控制下游作业的主作业.您将在Post-build Actions> 下找到此选项Build other projects.

关于构建触发,您可以使用该poll SCM选项.这不是最有效的方法,但您的选择可能受限于SVN而不是Git.

我只注意到你也提到整理所有构建结果-您可以通过将单个作业或使用该选项实现这一目标aggregate downstream test results之下Post-build Actions.

最终,您需要明确自己的构建策略.对我来说,如果对任一子项目进行了更改,您希望确保不会破坏任何内容.我不确定多SCM插件如何处理轮询多个存储库的概念,因此您可能需要将其考虑在内.

我想我给了你一些选择尝试; 让我知道你是怎么办的.