Lia*_*gan 6 teamcity continuous-integration integration-testing
我有一些长时间运行的集成测试,当我提交源代码控制时,由TeamCity服务器自动运行.
TeamCity允许我通过限制同时构建来防止这些任务同时占用所有构建代理,但是我想知道当新配置启动时TeamCity是否可以取消此配置的任何当前正在运行的任务?
在这种环境中,只要有新的源代码控制提交,旧的集成测试运行就无关紧要了,所以我不希望服务器浪费时间来运行旧版本的测试.
我认为这是不可能的,而且我想说这是设计使然。
想象一个允许这样做的世界,你永远不会知道哪个提交导致测试开始失败。如果您有足够的重叠提交,那么在您知道要运行的最终测试失败之前,您可能会进行 50 次构建,并且不知道是最后一次提交还是之前的 49 次提交导致了失败。
恕我直言,你最好集中精力,让多个运行可以在不同的服务器上同时发生,以获得你想要的速度,而不是把婴儿和洗澡水一起倒掉
更新
虽然我不认为这是开箱即用的支持,但如果我必须这样做,我想我会考虑在构建开始时收到通知(似乎没有关于正在排队的构建的通知,所以你必须允许多个构建同时运行以使其工作),然后您可以使用 API 取消其他构建:。
您还可以使用 API 获取构建列表,因此应该能够取消所有不是最新的构建列表
| 归档时间: |
|
| 查看次数: |
2006 次 |
| 最近记录: |