管道顺序

    您的查询搜索没有结果。

    GoCD中的流水线排序

    在GoCD中,我们使用两种不同类型的流水线排序方式:

    • 调度顺序:流水线被调度的时间顺序。
    • 自然顺序:基于材料修改的流水线时间顺序

    大多数情况下,调度顺序和自然顺序是一致的。用户逐步提交并构建,因此构建的调度顺序与变更的提交顺序相同。现在通过“带选项触发”功能,可以触发带有旧版本材料的流水线。在这种情况下,由仓库报告的材料变更和包含这些变更的流水线顺序并不相同。

    示例

    Order of check-ins retrieved from Hg log:
    
    changeset:   10689:6dbb27e86dc9
    branch:      trunk
    tag:         tip
    user:        ShilpaG
    date:        Tue Apr 27 09:52:15 2010 +0530
    summary:     fixing twist test EnvironmentScreenPermissions
    
    changeset:   10688:2b5b25a68117
    branch:      trunk
    user:        JJ
    date:        Tue Apr 27 08:45:29 2010 +0530
    summary:     fixing broken twist test
    
    changeset:   10687:6f91bbb648fa
    branch:      trunk
    user:        PS
    date:        Mon Apr 26 15:28:16 2010 +0530
    summary:     #3889 - Added the twist test for the stage details actions.
    
    
    Pipeline instance 1 has revision: 10687:6f91bbb648fa
    Pipeline instance 2 has revision: 10689:6f91bbb648fa
    Pipeline instance 3 has revision: 10688:2b5b25a68117
    

    基于调度的流水线顺序是:1、2、3。这是它们被触发的顺序。

    基于自然顺序的流水线顺序是:1、3、2。这是因为,如果我们查看每个流水线实例中的变更,1具有最早的修订集,3具有下一组修订,而2在该特定仓库(材料)中具有最新的修订。

    上述示例适用于只有一种材料的情况。如果流水线有多种材料,GoCD会检查所有材料的时间戳,以确定哪个是逻辑上更早的流水线实例。在这种情况下,较早的实例是指在所有材料中具有最早时间戳的那个。

    当我们使用“带选项触发”时,GoCD支持材料的自然排序。用户可以更改所有材料的版本,或者选择某个特定材料(可能是导致构建失败的那个),并将所有其他材料固定到特定版本(最后一个已知的良好版本)。