如何使用作业 DSL 配置 Jenkins 交付管道视图中要显示的最终作业?

How can a final-job-to-be-displayed in a Jenkins Delivery Pipeline view be configured using the Job DSL?

设置

如何通过 UI

View 配置页面上,view 中最后显示的作业有一个设置:

Pipelines
  Components
    Name                    [text field here]
    Initial Job             [text field here]
    Final Job (optional)    [text field here]

当给出 final Job 时,视图不会显示该作业可能触发的任何作业,即正如标签所暗示的,该作业是最后一个作业显示在这个视图中。

问题

如何使用作业 DSL 配置这个最终作业名称?

内置DSL 目前不支持设置最后一个作业。但是您可以使用 Configure Block 来生成任何配置:

deliveryPipelineView('example') {
  pipelines {
    component('one', 'foo1')
    component('two', 'foo2')
  }
  configure { view ->
    def components = view / componentSpecs
    components.'se.diabol.jenkins.pipeline.DeliveryPipelineView_-ComponentSpec'[0] << lastJob('bar1')
    components.'se.diabol.jenkins.pipeline.DeliveryPipelineView_-ComponentSpec'[1] << lastJob('bar2')
  }
}