2

我有一个只聚合多个 git sumodules的超级项目。我想在子模块的每次更改以及超级项目更新时触发 Jenkins。

/superproject
    /submodule-a
    /submodule-b
    /submodule-c

对于每个子模块,我使用Job DSL 插件并且工作正常,除非某些模块需要其他模块来编译或运行测试 - 这是在一个超级项目中聚合所有其他 repos 的原因之一。

作为超级项目的一部分,我应该如何测试单个子模块以及集成?

4

1 回答 1

2

我认为这没有意义。如果git 插件配置为post-receive在存储库中挂钩后触发作业,remote那么它应该可以工作。

如果将新提交推送到子模块,则父项目不会注意到。你必须这样做:

git submodule update --remote --recursive
git commit
git push

然后,只有这样,作业才应该收到通知。有关更多信息,您可以阅读:

于 2015-07-10T00:11:11.327 回答