写点什么

针对 DevOps 的 10 款最佳 Jenkins 插件

  • 2018-07-19
  • 本文字数:1508 字

    阅读完需:约 5 分钟

尽管目前在 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 支持的测试框架有 JUnit JMeter , Twitter 的 Lago Taurus 。下图是该插件输出的示例图:

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 仓库变更来触发新的构建和自动更新执行机工作目录,以确保构建的及时性和正确性。

感谢张婵对本文的审校。

2018-07-19 07:129499

评论

发布
暂无评论
发现更多内容

Java-WebSocket vs Netty-WebSocket 资源占用

FunTester

全球采购,打造企业韧性供应链

用友BIP

全球采购

OpenHarmony Meetup深圳站招募令

OpenHarmony开发者

【问题记录】Nginx使用域名作为upstream时,需要配置SNI

陈德伟

nginx 虚拟主机 proxy_pass SNI

软件开发项目管理体系,支撑体系,测试体系文档大全

金陵老街

Mac电脑视频处理软件 VideoProc Converter 4K直装中文版

胖墩儿不胖y

Mac软件 视频处理工具 视频工具

设计行业中如何保证图纸设计稿在数据传输中不会泄密

镭速

数据传输 文件传输

Spring扩展-Aware

IDO官网预售 设置您的IDO:开始您的IDO开发之旅

区块链软件开发推广运营

dapp开发 区块链开发 链游开发 NFT开发 IDO代币预售

软件测试/测试开发丨ChatGPT自动生成基于PO的数据驱动测试框架

测试人

Python 人工智能 软件测试 数据驱动 ChatGPT

交易履约之结算平台实践 | 京东云技术团队

京东科技开发者

架构 系统设计 企业号10月PK榜 交易履约 系统建设

用友BIP商业网络-银企联助力新钢联集团结算效率高效提升

用友BIP

银企联

“套壳”OpenAI,注定消亡!全球首个 20 万字大模型发布丨 RTE 开发者日报 Vol.63

声网

人工智能 RTE 实时互动

专家观点∣小议事项会计兼评用友事项会计中台产品

用友BIP

事项会计 冶金

OpenHarmony后代组件双向同步,跨层级传递:@Provide装饰器和@Consume装饰器

OpenHarmony开发者

动力电池电芯正负极缺陷检测

矩视智能

深度学习 机器视觉

为什么都在说实时数据传输?

谷云科技RestCloud

ETL 实时数据 CDC

关于企业如何替换FTP和加速FTP的问题

镭速

替换FTP 加速FTP

Spring扩展-BeanFactoryPostProcessor

数据库进阶教程:数据模型、索引与并发控制

百度开发者中心

深入理解线段树 | 京东物流技术团队

京东科技开发者

数据结构 数据结构与算法 线段树 企业号10月PK榜

九章云极DataCanvas公司入选可信开源大模型产业推进方阵首批成员

九章云极DataCanvas

新华网专访樊冠军:让YonGPT成为企业服务领域的高智商、全能型选手

用友BIP

2023全球商业创新大会

济源钢铁∣数智化转型实现超越周期的增长

用友BIP

智能制造

HarmonyOS跨进程通信—IPC与RPC通信开发指导

HarmonyOS开发者

9月《中国数据库行业分析报告》已发布,47页干货带你详览 MySQL 崛起之路!

墨天轮

MySQL 数据库 oceanbase 国产数据库 StoneDB

玩转HarmonyOS专项测试,轻松上架“五星”高品质应用

HarmonyOS开发者

针对DevOps的10款最佳Jenkins插件_DevOps & 平台工程_金灵杰_InfoQ精选文章