繁体   English   中英

在一项Jenkins CI工作中轮询许多SVN项目

[英]Polling many SVN projects in one Jenkins CI job

我遇到的情况是,需要在SVN中构建一系列Java项目以实现持续集成。 这些项目可以存在于多个分支中,我想在所有这些分支上执行CI构建。 但是,我希望每个Java项目/ SVN分支组合都没有一个不同的Jenkins项目。 我要做的是创建将SVN分支作为参数的Jenkins项目,并建立项目依赖关系链,并将分支参数传递给它。 (我在此项目中使用的是Ivy,而不是Maven,所以我没有插件可以为我做。)我为每个分支设置了一个链启动工作,该分支定义了分支参数,并且每天自动启动几次。

优点:这使我可以为每个分支机构创建一个Jenkins启动项目,而不是整个项目链。

缺点:构建按计划进行,而不是SVN轮询的结果。 这意味着所有分支每天都会创建多次,即使该分支没有进行任何更改。

我理想的情况是让启动项目定期轮询链中的所有项目,并在有任何更改的情况下构建链。 有没有办法做到这一点? 是否简单到在启动项目中指定所有项目位置(使用branch参数)然后将轮询指定为构建触发器?

如果我理解正确:您想从“启动”工作中轮询多个SVN位置,但是您不希望您的“启动”工作实际上检出所有这些SVN位置吗?

您可以配置“启动”作业,为其提供所有可能的SVN位置(或顶层位置,例如/branches/ ,该目录下将包含所有分支),并将结帐深度设置为empty 然后在此作业上配置SCM轮询。 它将轮询所有SVN位置,但实际上不会执行冗长的结帐。 一旦检测到SCM更改,您的启动工作将开始,并触发整个链

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM