我发现的唯一类似问题如下:Trigger travis ci builds if another git repository updates
请记住,我们的E2E测试是完整堆栈:我们有一个正在运行的服务器,我们的测试是针对访问服务器的UI运行的。没有任何东西被扼杀或嘲笑。
现在,我可以通过这种方式触发travis重建,但是当我在分支和不同的存储库分支之间存在相互依赖性时会出现问题。
因此,我要说我有3个存储库:backend
,frontend
和e2etests
。如果我创建了需要frontend/foo
的新分支backend/foo
,则e2e测试无法通过,因为它们将与frontend/foo
和backend/master
以及另一个运行一次frontend/master
和backend/foo
的时间。
以前有人遇到过这个问题吗?你是怎么处理它的?
答案 0 :(得分:0)
经过大量挖掘后,很明显没有解决方案,每个人都有自己的内置。
对我们有用的是一个git pre-push hook,指向我们的存储库的环境变量,当你推送它时询问你是否要为UI项目使用不同的分支(如果你在UI上,请问你是否想要为服务器项目使用不同的分支),默认情况下,它使用您所在项目的当前分支。所以它在推送时速度非常快,通常你只需再按一次ENTER,两个分支基本上都是必需的依赖项,并且将使用API端点触发travis构建。
到目前为止工作正常。