从Jenkins Multijob迁移到Pipeline插件

Arn*_*nen 6 jenkins jenkins-job-dsl jenkins-pipeline jenkins-blueocean

目前我们正在使用Jenkins CI 1.643(我相信)使用Multijob插件和Job DSL.
使用Job DSL生成作业集合,以及包含特定顺序中的所有其他作业的多工作(构建,分析,单元测试,集成测试等).

我有兴趣升级到Jenkins 2并使用Pipeline插件(以前称为Workflow插件).Pipeline插件提供了一个很好的图形表示,还提供了一些我们目前没有的更高级功能(例如需要人工交互的"暂停"操作).Blue Ocean项目似乎也非常时尚,但需要Pipeline插件.

关于迁移,我有几个问题:

  • 我应该继续使用Job DSL吗?我们在Groovy中创建了一个非常好的模板机制,所以我们只需要输入一些关于产品的细节(比如正在使用的编译器和某些质量阈值).我想我想保留这个.
  • 是否有从Multijob插件"迁移"到Pipeline插件的指南?
  • 我应该记住哪些事情?(插件之间的主要区别.)

Jes*_*ick 3

不是完整的答案,但是:

我们在 Groovy 中创建了一个非常好的模板机制,因此我们只需输入有关产品的一些详细信息(例如正在使用的编译器和某些质量阈值)。我想我想保留这个。

Pipeline 中的等效方法是创建一个 Groovy 库,抽象项目的常见方面,并从仅传递不同参数的各种作业中的简短主脚本调用它。

我应该继续使用 Job DSL 吗?

在某些情况下,仍然有理由将 Job DSL 与 Pipeline 结合使用:例如,如果您想根据某些计算条件自动生成作业数组。