Jenkins:单个作业有多个subversion模块

时间:2012-07-30 22:14:04

标签: ant continuous-integration jenkins

我正在使用Jenkins进行项目,并想知道以下是否可行。我有四个独立的SVN模块,作为工作的一部分进行检查。每个SVN模块都添加到一个单独的目录中。根据SCM轮询期间更新的模块,我只想构建某些目录。

使用Cruise Control,我能够为每个更新的模块设置一个变量,并将这些变量传递给ant构建脚本来控制构建。

有没有人做过类似的事情或有什么想法?

谢谢, 肖恩

1 个答案:

答案 0 :(得分:1)

这个问题非常复杂。您正在触及CI构建器的太多不同部分以及其中的一些任务。

基本上......在Jenkins中提供控制构建行为本身的信息的工作/项目不是最好的方法,但是如果你没有其他选择,那么你没有别的选择。

构建本身应该是不可知的,它应该包含所有参数,使得构建在CI和Workstation中都能成功(例如,来自cmd.exe)。

  

根据SCM轮询期间更新的模块,我会   喜欢只建立某些目录。

所以基本上你想要Maven构建系统,它提供基于模型/模块的条件构建,而不像Ant那样构建一个单独的项目。

  

通过Cruise Control,我能够为每个模块设置一个变量   更新并将这些变量传递给ant构建脚本   控制构建。

在这里,您希望拥有某种类似的构建触发功能。这里没有更详细的需求解释,我只能建议检查Pramatreized Build Trigger插件,它允许通过你设置的参数触发构建。

  

有没有人做过类似的事情或有什么想法?

最后,在这里您还可以查看此插件:https://wiki.jenkins-ci.org/display/JENKINS/Conditional+BuildStep+Plugin

在结论中,Jenkins提供了一些开箱即用的功能,因此如果使用Ant,您可以轻松使用环境变量并开始构建所需的行为。通常在花费一些时间思考如何在没有大量Jenkins插件帮助的情况下做某事时,它会让你真正理解,你想要达到的关键是什么。

希望我有所帮助。干杯,队友。