对新版本进行测试

    您的查询搜索没有结果。

    GoCD依赖管理

    当你拥有非平凡的依赖管道链时,你可能会关注依赖管道和材料如何交互。例如,代码和测试作为同一提交的一部分被检入。但是代码是按顺序构建和测试的,因此必须对构建和测试代码的管道使用相同的材料版本。本节介绍了一些依赖管理的概念以及GoCD如何处理某些复杂场景。

    在整个依赖链中传播材料修订版

    如果你频繁更新材料,同时长时间运行的依赖管道共享相同的材料,你可能会遇到触发依赖链的修订版不再是最新修订版的情况。Go跟踪了触发依赖链的修订版,并确保该版本在整个链条的所有成员中传播。这有助于确保作为该构建生成的所有工件共享一个共同的修订版。

    示例

    考虑以下依赖链:

    图例

    • 版本控制系统(SCM): 仓库
    • rev1, rev2: 仓库中的签入
    • A: 开发构建管道
    • 依赖B: 验收测试管道

    运行方式

    • 代码被签入到SCM (rev1)
    • 开发构建 (A) 由签入触发
    • 另外一次签入到SCM (rev2)
    • 开发构建完成 (使用rev1) 并触发验收测试 (B)
    • 这里依赖管理就发挥了作用。Go足够智能,可以检测到最初触发构建的是rev1,并确保验收测试签出该修订版 (rev1) 而不是最新修订版 (rev2)。在这种情况下,Go确保了适当的验收测试版本针对适当的开发构建版本运行。