【AICon】硅谷视野+中国实践,汇聚全球顶尖技术的 AI 科技盛会 >>> 了解详情
写点什么

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

评论

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

Elasticsearch安装

北漂码农有话说

同态加密

soolaugust

学习 加密 同态加密

Linux系统检查脚本

雪雷

Shell 系统检测

API统一管理平台-YApi

雪雷

YAPI API接口管理

Gitlab Pipeline+Supervisor 实战Python项目CI/CD

雪雷

gitlab jenkins CI/CD Supervisor

Docker Web管理工具

雪雷

Docker shipyard dockerui

探测mysqldump详细过程

Simon

MySQL

lower_case_table_names参数详解

Simon

MySQL

微服务API网关-Kong详解

雪雷

kong api 网关

Apache常用配置指北

亻尔可真木奉

Apache 代理 跨域

Python利用sphinx构建个人博客

雪雷

sphinx Blog

Guacamole实战

雪雷

guacamole 远程登录 堡垒机

RabbitMQ实践

雪雷

RabbitMQ 消息队列

JVM-技术专题-GCViewer调优GC

洛神灬殇

JVM

一文带你检查Kubernetes应用是否为最佳实践

雪雷

k8s k8s最佳实践

Golang领域模型-开篇

奔奔奔跑

微服务 后端 领域驱动设计 架构设计 Go 语言

JVM-技术专题-管程技术分析

洛神灬殇

JVM 管程

Jenkins部署Python项目实战

雪雷

Python jenkins CI/CD

记一次混合监控的反思

雪雷

监控 zabbix redis监控 监控宝

Serverless初探

雪雷

Serverless Lambda 无服务器云函数

记一次混合云API发布的反思

雪雷

iptables API api发布

Docker+Jenkins+Gitlab+Django应用部署实践

雪雷

DevOps jenkins CI/CD

Linux自定义快捷工具

雪雷

Linux Shell tools scripts

MySQL线程状态详解

Simon

MySQL 线程状态

微服务注册发现配置中心-consul

雪雷

Consul 服务注册与发现 配置中心

Ceph集群部署

雪雷

分布式存储 Ceph rdb pvc

SonarQube集成gitlab/jenkins

雪雷

jenkins sonar gitlab ci 代码扫描

业务容器化改造

雪雷

Docker 容器 微服务 服务化改造

Jenkins 详解

雪雷

jenkins

Flink高可用性设置-4

小知识点

scala 大数据 flink 流计算

玩K8S不得不会的HELM

雪雷

k8s Helm

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