git - 具有多个项目和 git 分支的 Jenkins

标签 git jenkins

我想创建一个 Jenkins 作业,它将构建我所有的子项目 A、B、C 和 D。对于这些子项目中的每一个,如果 */develop 有变化,它应该检查 git 存储库, */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 个以上的工作,而一个工作可以完成所有工作。

有什么解决办法吗?

最佳答案

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

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

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

关于git - 具有多个项目和 git 分支的 Jenkins,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14484512/

相关文章:

git - 如何回到 Git 中的最新版本?

java - 尝试提交文件时 git 批处理上的端口 22 网络错误

java - Jenkins maven 还有其他 java 版本。如何解决?

java - Groovy 脚本编译为类

android - Jenkins 使用 gradle 子项目构建

shell - 当搜索到的字符串不存在时,Jenkins shell 脚本返回退出代码 1

java - 如何在 Eclipse 中分 ionic 项目类路径?

git - 将本地 Sourcetree 存储库恢复为 master

firefox - 在 Linux 上的 Jenkins 下运行的 WebDriver 测试中出现 NotConnectedException 错误

Windows 上的 Git 1.6.4 beta (msysgit) - Unix 或 DOS 行终止