【AICon】AI 基础设施、LLM运维、大模型训练与推理,一场会议,全方位涵盖! >>> 了解详情
写点什么

针对 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:128371

评论

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

Underlay网络:如何立住可靠又支持大规模无收敛的“人设”

华为云开发者联盟

云服务 交换机

Apple Developer 开发者账号申请&实名认证【2020】

iHTC

Apple Developer iOS Developer 苹果实名认证

iOS Handle Refunds 处理退款 --- WWDC20(Session 10661)

iHTC

WWDC2020 wwdc iap 苹果退款 iOS退款

面经手册 · 第13篇《除了JDK、CGLIB,还有3种类代理方式?面试又卡住!》

小傅哥

Java 字节码编程 asm 动态代理 cglib

我们可以把Adapter精简到什么地步

mengxn

RecyclerView BetterAdapter Adapter

CECBC区块链专委会副主任吴桐主讲全国社保基金数字货币讲座

CECBC

区块链 数字货币

正则表达式知识总结

iHTC

正则表达式

你不知道的java对象序列化的秘密

程序那些事

Java java序列化 序列化的秘密

JDK14性能管理工具:jmap和jhat使用介绍

程序那些事

内存泄露 JDK14 jmap jhat

华为云专家带你解读文本情感分析任务

华为云开发者联盟

内容 数据 分析

优秀开源项目、博客、书籍整理

铁匠

收藏教程 资源汇总

第四周总结

_

极客大学架构师训练营 第四周总结

一个草根的日常杂碎(10月10日)

刘新吾

随笔杂谈 生活记录 社会百态

商业模式和盈利模式的思考

iHTC

商业模式 盈利模式 地摊经济

一个草根的日常杂碎(10月9日)

刘新吾

随笔杂谈 生活记录 社会百态

华为丁耘,解读百尺竿头的中国5G

脑极体

分配时间戳和生成水位线

小知识点

scala 大数据 flink

技术解读丨分布式缓存数据库Redis大KEY问题定位及优化建议

华为云开发者联盟

云计算 华为 技术

JVM系列笔记 - 寄存器

朱华

JVM

融合与共生之下,区块链都能“+”什么?

CECBC

区块链 大数据

第四周 系统架构学习总结

蓝黑

极客大学架构师训练营

极客时间 - 架构师一期 - 第四周作业

_

第四周作业 架构师一期

华为程序员发现孩子不是自己的,怒提离婚!女方不要孩子!绿他的竟然是个酒吧混混!

程序员生活志

华为 程序员

通俗易懂和你聊聊寄存器那些事(精美图文)

cxuan

后端 计算机 汇编

区块链需与5G等技术打好“组合拳”

CECBC

区块链 5G

当我们在谈论跨平台的时候 ——— 我们在说什么

iHTC

跨平台

Guava-技术专题-Cache用法介绍

洛神灬殇

后疫情时代,华为云会议如何定义未来会议?

华为云开发者联盟

视频 会议

OpenResty 项目脚手架

铁匠

lua nginx openresty

随想

Nydia

一个草根的日常杂碎(10月11日)

刘新吾

随笔杂谈 生活记录 社会百态

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