3

我想创建一个 Jenkins 作业,它将构建我所有的子项目 A、B、C 和 D。对于这些子项目中的每一个,它应该检查 git 存储库是否有更改 */develop、*/release /xx 和 */master 分支。如果其中一个有变化,它应该为那个分支和那个子项目构建(并运行单元测试)。我尝试使用多配置插件,它非常接近我想要的。这适用于夜间构建,但不适用于 git-update-triggered 构建。我可以使用一个 shell 脚本来完成这项工作,该脚本将在运行 Ant 之前克隆所需的存储库和分支。

主要问题是:我不能使用配置参数(如 SUB_PROJECT=A、BRANCH=release/1.0)作为 SCM 参数。当我将 git respository url 设置为“git@bitbucket.org:mine/$SUB_PROJECT.git”并将分支设置为“*/$BRANCH”时,它不会用值替换参数。

我不喜欢“jenkins-autojobs”或“jenkins-build-per-branch”解决方案,因为当一项工作可以完成所有工作时,我不想创建 12 个以上的工作。

任何想法如何解决这个问题?

4

1 回答 1

0

这个问题与以下问题非常相似:

我推荐使用可以与 Jenkins 集成的Gerrit 。提交的补丁被实现为分支,这些分支会通过 Jenkins 作业自动验证。

这可能不是一个完整的解决方案,但会将管理短期功能分支的问题外包出去。

于 2013-01-23T23:22:36.293 回答