发布于 2016-08-29 20:35:38
我在这两方面都有丰富的经验。简洁的回答是,Job已经存在了很长时间,是Netflix“编码”Jenkins的开源解决方案。它允许您在为Jenkins作业编写脚本时引入逻辑和变量,通常情况下,您可以使用这些作业为特定项目形成某种“管道”。这个插件作为启用作业模板和脚本的一种常见方式,得到了相当多的支持。
Jenkins管道(2.0)是Jenkins作业的新化身,它完全基于DSL,并试图消除将多个作业缝合在一起来填充单个管道的需要,这是jobs目前最常用的方法。最初,由于管道DSL没有提供jobs所做的许多功能,而且如上所述,jobs将允许您创建管道作业,因此可以一起使用它们来定义管道。
今天,IMO几乎没有理由使用Job,因为管道是Jenkins支持的用于编写Jenkins管道的机制,它已经满足或超过了Job的大部分功能。新的插件正在为管道开发,而那些没有被Jenkins开发人员鼓励与管道集成的插件。管道有几个优点:
最后,詹金斯管道是目前詹金斯最普遍的特点。查看詹金斯2016年世界议程,您将看到大约。50%的会议涉及管道。没有工作DSL。
发布于 2017-06-29 18:55:43
我的感觉是,理想的方法是两者兼用。管道是将作业作为代码的新的本地Jenkins特性。然而,如果从零开始建造Jenkins,那么仍然需要创造这些就业机会。这意味着Jenkins不可能100%地编写脚本并由代码构建。
您可以做的是使用作业DSL来构建所有作业的骨架结构,然后使用管道来实现作业。这将允许您100%编写Jenkins脚本,减去要创建的初始种子作业。
也许,最终我们将能够使用管道完全控制Jenkins (安全,配置,甚至插件)。但在此之前,我认为使用DSL和管道是一种很好的方法。
发布于 2016-06-23 22:53:13
根据有限的经验,我的初步答覆如下:
因此,综上所述: jobs的DSL是用来创建形成管道的就业机会的,管道插件的DSL定义了管道本身。
为了回答您的问题:管道应该在将来得到更广泛的支持,在我看来更直接(这个任务是一个任务,而不是一个元作业),并且似乎有更多的特性(包括工作流)。我会使用它,除非您点击前面提到的doom的显示停止错误,并且找不到一个修复/解决方法。
https://stackoverflow.com/questions/37657810
复制相似问题