BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

针对DevOps的10款最佳Jenkins插件

| 作者 金灵杰 关注 5 他的粉丝 发布于 2018年7月20日. 估计阅读时间: 5 分钟 | BCCon2018全球区块链生态技术大会,将区块链技术的创新和早期落地案例带回您的企业

尽管目前在CI/CD领域有着众多的平台,Jenkins一直是最著名的持续集成平台之一。虽然它经历了和Oracle的争斗,最终从之前的Hudson单独分离出来,但是凭借社区和大公司的支持,目前Jenkins有超过1500个插件,用于支撑整个持续集成流程。

不过由于插件数量众多,要选择一些合适的Jenkins插件会比较困难,本文介绍了一些比较有用的Jenkins插件,能够提升开发者效率。

Job DSL Plugin

对于很多开发者来说,不同的仓库和项目分支都需要去Jenkins上重新创建任务。这是一个重复且单调的工作,对于开发者来说非常不友好。

Jenkins Job DSL Plugin可以让开发者通过Groovy脚本来定义和配置任务,随后插件会通过执行这些脚本来维护Jenkins任务。这样开发团队可以定制自己的模板文件,通过领域特定语言(Domain Specific Language,DSL)直接定义和创建任务。

Job Generator Plugin

和Job DSL Plugin类似,Job Generator Plugin也是用于快速创建任务。对于大团队来说,整个持续集成流程应该类似,不同的项目的区别主要就是代码分支等。该插件可以让团队的配置管理员为整个团队定义一个参数化的模板,项目开发人员可以通过这个模板快速的在Jenkins上创建出任务。

该插件和Job DSL插件的最大区别是使用者无需了解Groovy。

Performance Plugin

该插件可以读取和解析测试框架输出的报告,并且在Jenkins上绘制性能和稳定性相关的图表。Performance Plugin支持的测试框架有JUnitJMeter, Twitter的LagoTaurus。下图是该插件输出的示例图:

Gitlab Merge Request Builder Plugin

Gitlab Merge Request Builder Plugin可以方便的自动发起代码审查,它在创建pull request的时候,会自动带上关联任务的运行结果,以方便代码审查着确认改动的正确性。

同时,这款插件还支持自动合并,既在代码审查通过后自动合并该pull request内容。

JIRA Plugin

JIRA Plugin可以让Jenkins任务和JIRA集成起来,这样项目管理者可以通过JIRA了解项目进度,开发者也可以通过该插件直接更改JIRA上的issue状态。

Kubernetes Plugin

和最近大热的容器编排框架Kubernetes集成当然不能落下了。另外,Jenkins对执行机的管理一直比较弱,无法做到快速的扩容和缩容。Kubernetes Plugin通过引入Kubernetes的容器编排能力,让Jenkins执行机运行在Kubernetes环境中。

Build Pipeline plugin

对一个系统的持续集成会包含很多个方面,如果将它们都杂糅在一个Jenkins任务中,会提高排查成本,也不利于整个持续集成的运作。Build Pipeline plugin可以让项目管理员针对系统持续集成步骤设置一系列关联的任务,任务之间可以设置不同的触发条件,以确认何时需要人工介入。该插件可以让整个持续集成流程变得非常直观:



SCM Sync Configuration Plugin

对于项目管理人员来说,项目配置的丢失和代码丢失一样是非常危险的。对于代码我们有代码仓库进行保存,对于配置也需要能够备份和版本管理。SCM Sync Configuration Plugin可以自动将Jenkins任务配置同步到版本管理系统中。另外,该插件还可以跟踪配置的变更情况,让项目管理人员能够清晰的了解任务的修改情况。

Jenkins Maven plugin

相比于Jenkins内置的Maven支持,Jenkins Maven plugin对Maven工程提供了更丰富的功能。包括:自动配置报告插件(如JUnit、Findbugs等),增量构建,并行构建等。

Jenkins Subversion plugin

目前仍然有很多项目在使用Subversion作为版本控制软件,Jenkins Subversion plugin让Jenkins任务可以支持托管在Subversion上的工程。它的功能包括监视Subversion仓库变更来触发新的构建和自动更新执行机工作目录,以确保构建的及时性和正确性。  

感谢张婵对本文的审校。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT