jenkins常用插件汇总

本文精选了Jenkins中关键的插件,涵盖用户权限、代码管理、构建触发、构建参数等多个方面,助力企业实现高效的持续集成与交付。从LDAP集成、Git与Subversion支持,到构建触发、参数管理和构建环境配置,以及构建通知和容器化Slave,全面解析如何通过Jenkins插件提升DevOps效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

开源版本的Jenkins 具有三大能力:Master-Slave的分布式构建调度能力、Pipeline编排能力、强大的开源生态(插件)能力。

2017年4月,Jenkins创始人KK(Kohsuke Kawaguchi )来到中国,交流中他也明确表示Jenkins的成功主要取决于其开源生态系统,Jenkins有1400多个插件可供使用。因为有开源的插件生态系统的存在,Jenkins要用得好,插件一定是不能少的,需要我们充分发现和使用插件来实现我们的需求,而不是重复造轮子,自己去实现。

但是面对林林总总的插件,到底该怎么选?我的常用需求有哪些插件可以满足,笔者根据以往在企业中管理Jenkins的经验推荐如下常用的插件列表,希望大家基于Jenkins及其插件生态实现自己的持续交付与DevOps平台。

用户及权限

Jenkins 用户权限管理是Jenkins Administration中非常很重要的环节,由于大部分企业都会有自己的域控管理,所以和LDAP集成并基于用户组实现权限模型设计与管理是企业级Jenkins实践的重要内容。

  • l  LDAP (https://plugins.jenkins.io/ldap),这个插件允许使用LDAP对用户进行认证,LDAP 服务器可以为Active Directory 或者 OpenLDAP。
  • l  Active Directory https://plugins.jenkins.io/active-directory,这个插件允许使用Active Directory对用户进行认证,同时结合诸如Matrix Authorization Strategy插件,可以识别用户所在的所有用户组,对用户授权进行灵活配置。
  • l  基于Windows Active Directory进行域管理的企业,推荐采用Active Directory。
  • l  GitHub Authentication https://plugins.jenkins.io/github-oauth,这个插件提供了使用GitHub进行用户认证和授权的方案。
  • l  Gitlab Authentication https://plugins.jenkins.io/gitlab-oauth,这个插件提供了使用GitLab进行用户认证和授权的方案。
  • l  Matrix Authorization Strategy https://plugins.jenkins.io/matrix-auth,这个插件提供了基于矩阵的授权策略,支持全局和项目级别的配置。
  • l  Role-based Authorization Strategy https://plugins.jenkins.io/role-strategy,这个插件提供了一种基于角色(Role)的用户权限管理策略,支持创建global角色、Project角色、Slave角色,以及给用户分配这些角色。这款插件是最常用的Jenkins权限策略和管理插件。

代码管理

Jenkins 项目中配置Source Code Management 去下载代码进行构建任务,是非常普遍的应用场景。Jenkins插件支持很多SCM的系统,使用最常见的是Git 和SVN。

项目及视图

Jenkins中对Project 和 view的管理,是用户日常工作中使用很多的功能。

  • l  Folder https://plugins.jenkins.io/cloudbees-folder,这个插件支持用户使用目录管理项目,目录支持嵌套,并且支持目录中创建视图。
  • l  List view Jenkins 默认支持List类型的视图,用户可以创建List视图过滤所关心的项目。
  • l  Sectioned View https://plugins.jenkins.io/sectioned-view,这个插件支持一种新的视图,视图可以分为多个部分,每部分可以单独配置显示所选择的项目信息。
  • l   Nested View https://plugins.jenkins.io/nested-view,这个插件支持一种新的视图,其表示直接显示项目,而是以目录图标显示所包含的子视图,每个子视图显示所选项目信息。
  • l  Build Pipeline https://plugins.jenkins.io/build-pipeline-plugin,这个插件提供了一种Build Pipeline 视图,用于显示上、下游项目构建的关系。

构建触发

Jenkins支持多种Build 触发方式,尤其一些自动化触发方式非常有用

  • l  Build periodically,Jenkins 内置功能,可以设置类似crontab时间,周期性地自动触发构建。
  • l  Poll SCM,Jenkins 内置功能,类似Build periodically,可以设置类似crontab时间,不同的是不是直接进行构建,而是周期性地在后台检查所配置的SCM有没有更新,只有当有代码更新时才会触发构建。
  • l  Trigger builds remotely (e.g., from scripts),Jenkins 内置功能,远程触发构建,通过设置token可以支持远程脚本中触发Jenkins构建。
  • l  Gerrit Trigger https://plugins.jenkins.io/gerrit-trigger,这个插件将Jenkins集成到Gerrit code review中,支持Jenkins配置Gerrit服务器等信息,实现Gerrit event 触发Jenkins 构建。
  • l  GitLab https://plugins.jenkins.io/gitlab-plugin,    这个插件将Jenkins 集成到GitLab web hook中,支持Gitlab 分支及Merge Request等相关事件触发Jenkins构建。
  • l  GitHub Integration https://plugins.jenkins.io/github-pullrequest ,这个插件将Jenkins集成到GitHub中,支持Gitgub分支及Pull requests 触发Jenkins 构建。
  • l  JIRA Trigger https://plugins.jenkins.io/jira-trigger,这个插件将Jenkins集成到Jira WebHooks中,支持Jira issue的状态等变化时触发Jenkins构建。

构建参数

Jenkins除了支持普通的参数类型(布尔型、字符串型、多行文本型、选择型和文件型 )外,还有一些插件支持更加丰富实用的参数类型,比如参数间动态关联、多层级参数、隐藏参数等 。

  • l  nodelabelparameter  https://plugins.jenkins.io/nodelabelparameter,这个插件增加了一个新的参数类型,Node 和 Label,从而使用户通过参数可以选择项目构建运行的节点。
  • l  其他插件不一一列举,可以查看插件说明

Ø  https://plugins.jenkins.io/hidden-parameter

Ø  https://plugins.jenkins.io/extended-choice-parameter

Ø  https://plugins.jenkins.io/validating-string-parameter

Ø  https://plugins.jenkins.io/extensible-choice-parameter

Ø  https://wiki.jenkins.io/display/JENKINS/Active+Choices+Plugin

构建任务及环境

围绕构建任务,有许多小的插件,却提供了一些实用的功能

构建通知

把构建状态及时地通知用户,是Jenkins的一个必不可少的功能。Jenkins支持多种主动和被动的通知方式。

  • l  Mailer  https://plugins.jenkins.io/mailer,这个插件支持基本的邮件通知功能,比如构建失败和构建恢复成功可以发送邮件通知给相关人员。
  • l  Email Extension https://plugins.jenkins.io/email-ext,这个插件是邮件通知的扩展,支持定制邮件内容,触发条件以及邮件接收者,功能比基本邮件通知要灵活强大的多。
  • l  Slack Notification https://plugins.jenkins.io/slack,这个插件支持把构建结果推送到Slack channel。

容器化Slave

Jenkins的Master-Slave架构实现了分布式构建,可以充分的横向扩展Slave来提升构建能力,将Slave容器化是目前主流的构建环境标准化、集群化和弹性化的方式。

Admin相关插件

jenkins常用插件汇总:
Build-timeout Plugin:任务构建超时插件
Naginator Plugin:任务重试插件
Build User Vars Plugin:用户变量获取插件
Build Pipeline Plugin View :Pipeline 管道流图表展示插件

Build Flow Plugin:工作流插件,支持DSL脚本定义工作流
Build Graph View Plugin:build Flow插件视图(安装后需要重新才能生效)
Multijob Plugin:多任务插件
Build-timeout Plugin:job构建超时插件
Build Timestamp Plugin :任务log时间戳插件,使得job log的每次输出前面都增加当时的时间
Parameterized Trigger Plugin:这是一个扩展型的插件,使各个job连接的时候可以传递一些job相关的信息
Join Plugin:这也是一个触发job的插件,亮点在于它触发job的条件是等待所有当前job的下游的job都完成才会发生。
Files Found Trigger:检测指定的目录,如果发现指定模式的文件则启动build。
BuildResultTrigger Plugin:根据其他的job的成功或失败来启动此build。
Publish Over SSH Plugin:通过ssh发布文件
Rebuild Plugin:重新执行插件
ws-cleanup Plugin :workspace清理插件
Cron Column Plugin: 通过定时任务例行的运行一些job
Job Configuration History Plugin:使用心得:使job具备版本管理的能力,diff和rollback功能更是非常赞
HTTP Request Plugin:使用心得:在构建前后可以通过该插件以http形式调用各种api接口实现和内部系统的联动
Periodic Backup:使用心得:备份是运维一个系统必须要保障的事情,该插件的恢复功能可能不可用,需要手工进行,好处在于可以定时备份
Job Import Plugin:使用心得:可以快速导入其他jenkins集群的已有job,需要认证的jenkins系统导入需要提供凭证才可以
Status Monitor Plugin:构建状态插件
Build Monitor View :使用心得:基于该插件可以实现dashboard功能
Build Environment Plugin:构建环境插件,可以进行构建环境比较。
FTP插件:
Monitoring:Monitoring of Jenkins

基础依赖插件:
jQuery Plugin:jQuery插件

 

转:https://www.cnblogs.com/honeybee/p/7877875.html

http://www.ttlsa.com/auto/jenkins-plugin-recommend/

Ant Apache HttpComponents Client 4.x API Plugin Bootstrap 4 API Plugin Bootstrap 5 API bouncycastle API Branch API Build Timeout Caffeine API Plugin Checks API plugin Command Agent Launcher Plugin Conditional BuildStep Credentials Credentials Binding Plugin Display URL API Durable Task Plugin ECharts API Email Extension Plugin Folders Plugin Font Awesome API Plugin Git Git client GIT server Plugin Gitee Plugin GitHub API GitHub Branch Source GitHub plugin GitLab Plugin Gradle Plugin Infrastructure plugin for Publish Over X Jackson 2 API Java JSON Web Token (JJWT) Plugin Javadoc Plugin JavaScript GUI Lib: ACE Editor bundle plugin JavaScript GUI Lib: Handlebars bundle plugin JavaScript GUI Lib: Moment.js bundle plugin JQuery3 API Plugin JSch dependency plugin JUnit LDAP Plugin Localization Support Plugin Localization: Chinese (Simplified) Lockable Resources plugin Mailer Plugin Matrix Authorization Strategy Plugin Matrix Project Plugin Maven Integration OkHttp Plugin Oracle Java SE Development Kit Installer Plugin OWASP Markup Formatter Plugin PAM Authentication plugin Parameterized Trigger plugin Pipeline Pipeline Graph Analysis Plugin Pipeline: API Pipeline: Basic Steps Pipeline: Build Step Pipeline: Declarative Pipeline: Declarative Extension Points API Pipeline: GitHub Groovy Libraries Pipeline: Groovy Pipeline: Input Step Pipeline: Job Pipeline: Milestone Step Pipeline: Model API Pipeline: Multibranch Pipeline: Nodes and Processes Pipeline: REST API Plugin Pipeline: SCM Step Pipeline: Shared Groovy Libraries Pipeline: Stage Step Pipeline: Stage Tags Metadata Pipeline: Stage View Plugin Pipeline: Step API Pipeline: Supporting APIs Plain Credentials Plugin Plugin Utilities API Popper.js 2 API Popper.js API Plugin Publish Over SSH Resource Disposer Plugin Run Condition Plugin SCM API Plugin Script Security Plugin Snakeyaml API Plugin SSH Build Agents plugin SSH Credentials Plugin SSH plugin SSH server Structs Plugin Timestamper Token Macro Plugin Trilead API Plugin
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值