二丫讲梵 二丫讲梵
首页
  • 最佳实践
  • 迎刃而解
  • Nginx
  • Php
  • Zabbix
  • AWS
  • Prometheus
  • Grafana
  • CentOS
  • Systemd
  • Docker
  • Rancher
  • Ansible
  • Ldap
  • Gitlab
  • GitHub
  • Etcd
  • Consul
  • RabbitMQ
  • Kafka
  • MySql
  • MongoDB
  • OpenVPN
  • KVM
  • VMware
  • Other
  • ELK
  • K8S
  • LLM
  • Nexus
  • Jenkins
  • 随写编年
  • 家人物语
  • 追忆青春
  • 父亲的朋友圈
  • 电影音乐
  • 效率工具
  • 博客相关
  • Shell
  • 前端实践
  • Vue学习笔记
  • Golang学习笔记
  • Golang编程技巧
  • 学习周刊
  • Obsidian插件周刊
关于
友链
  • 本站索引

    • 分类
    • 标签
    • 归档
  • 本站页面

    • 导航
    • 打赏
  • 我的工具

    • 备忘录清单 (opens new window)
    • json2go (opens new window)
    • gopher (opens new window)
    • 微信MD编辑 (opens new window)
    • 国内镜像 (opens new window)
    • 出口IP查询 (opens new window)
    • 代码高亮工具 (opens new window)
  • 外站页面

    • 开往 (opens new window)
    • ldapdoc (opens new window)
    • HowToStartOpenSource (opens new window)
    • vdoing-template (opens new window)
GitHub (opens new window)

二丫讲梵

行者常至,为者常成
首页
  • 最佳实践
  • 迎刃而解
  • Nginx
  • Php
  • Zabbix
  • AWS
  • Prometheus
  • Grafana
  • CentOS
  • Systemd
  • Docker
  • Rancher
  • Ansible
  • Ldap
  • Gitlab
  • GitHub
  • Etcd
  • Consul
  • RabbitMQ
  • Kafka
  • MySql
  • MongoDB
  • OpenVPN
  • KVM
  • VMware
  • Other
  • ELK
  • K8S
  • LLM
  • Nexus
  • Jenkins
  • 随写编年
  • 家人物语
  • 追忆青春
  • 父亲的朋友圈
  • 电影音乐
  • 效率工具
  • 博客相关
  • Shell
  • 前端实践
  • Vue学习笔记
  • Golang学习笔记
  • Golang编程技巧
  • 学习周刊
  • Obsidian插件周刊
关于
友链
  • 本站索引

    • 分类
    • 标签
    • 归档
  • 本站页面

    • 导航
    • 打赏
  • 我的工具

    • 备忘录清单 (opens new window)
    • json2go (opens new window)
    • gopher (opens new window)
    • 微信MD编辑 (opens new window)
    • 国内镜像 (opens new window)
    • 出口IP查询 (opens new window)
    • 代码高亮工具 (opens new window)
  • 外站页面

    • 开往 (opens new window)
    • ldapdoc (opens new window)
    • HowToStartOpenSource (opens new window)
    • vdoing-template (opens new window)
GitHub (opens new window)
  • Nexus系列文章

  • Jenkins系列文章

    • Jenkins入门系列笔记汇总整理
    • 前言与介绍
    • Jenkins初始部署与简单配置
    • Jenkins各配置选项介绍
    • Jenkins中一个项目的构建
    • Jenkins配置项目构建的钉钉通知
    • Jenkins忘记管理员密码怎么办
    • Jenkins与gitlab的交互探微
    • Jenkins根目录详解
    • Jenkins插件之显示构建时间
    • Jenkins插件之批量修改配置
    • Jenkins配置简单构建邮件推送
    • Jenkins复杂邮件推送配置详解
    • Jenkins配置复杂构建邮件推送
    • Jenkins构建安卓项目之前的一些唠叨
    • Jenkins构建安卓项目配置
    • Jenkins与Gitlab分支的交互
    • Jenkins构建nodejs项目
    • 使用docker部署Jenkins及初始配置
    • 配置gitlab提交代码Jenkins自动构建
    • Jenkins回滚方案探微
    • Jenkins角色控制(小黄锁)探微
    • Jenkins构建的应用配置问题解决探微
    • Jenkins构建中tag的应用
    • Jenkins插件之Ansicolor(神器)
    • 最基础核心的Jenkins功能部署一个java应用
    • Jenkins+sonar构建代码扫描
    • Jenkins+docker+gitlab将应用部署到docker
    • Jenkins参数化构建犀利插件Active-Choices-Plugin
    • 记一次将代码中参数外显到构建历史中的操作
    • Jenkins升级与迁移的经验分享
    • pipeline笔记之从一个简单的项目构建开始
    • Jenkinsfile声明式语法详解
    • 自动构建的原始配置以及pipeline中的用法
    • 多分支构建的实践与思考
    • 使用Jenkinsfile类前端项目的部署与回滚
    • 如何在Jenkinsfile中定义一个全局的时间戳变量
    • Jenkins中自由风格回滚方案的最佳实践
    • Jenkins中pipeline风格回滚方案的最佳实践
    • pipeline结合ansible剧本进行批量的部署与回滚配置
    • 最近配置安卓iOS打包本地化流程中一些值得记录的内容
    • pipeline中如何在environment环节声明一个含有通配符的变量
    • git-Parameter插件在pipeline共享库中的实践详解
    • jenkins作为ci检测代码是否合并的实践
    • 将Jenkins共享库的Jenkinsfile放到ci静态检测的实践
    • Jenkins的pipeline实践之GitSCM参数配置项详解
    • Jenkins中pipeline对接CMDB接口获取主机列表的发布实践
    • Jenkins有任务无法kill提示即将关闭
    • Jenkins基于Share Library共享库的最佳实践探索
    • Jenkins结合MySql Database插件的平台化实践思路
    • Jenkins-Groovy中三元表达式的用法
    • Jenkins-Groovy中Switch的高阶用法
    • Jenkins-pipeline之利用activity choice插件对接查询MySQL数据实现动态参数化的功能
    • CentOS通过yum快速安装Jenkins
    • Jenkins-pipeline语法之错误处理详解(文末有干货)
    • Jenkins常用插件汇总以及简单介绍
      • 前言。
      • 1,Rebuilder。
      • 2,AnsiColor。
      • 3,Maven Release Plug-in。
      • 4,user build vars。
      • 5,Active Choices Plugin
      • 6,build-name-setter
      • 7,Email Extension Template
      • 8,description setter
      • 9,Git Parameter
      • 10,Role-Based Strategy
      • 11,Job Configuration History Plugin
      • 12,Simple Theme
      • 13,Build Trigger Badge
      • 14,Console Column Plugin
      • 15,Display Console Output Plugin
      • 16,Version Number
      • 17,figlet-buildstep
      • 18,Hidden Parameter plugin
      • 19,Config File Provider
      • 20,extended-choice-parameter
      • 21,Docker Pipeline
      • 22,MySQL Database
    • Jenkins所遇报错汇总及解决
    • Jenkins管理维护运维规范
  • ELK笔记

  • Kubernetes笔记

  • LLM专题

  • 系列专题
  • Jenkins系列文章
二丫讲梵
2019-01-07
目录

Jenkins常用插件汇总以及简单介绍

文章发布较早,内容可能过时,阅读注意甄别。

# 前言。

刚刚发完那个刁钻需求的文章,发现已经到了二十九篇了,而本篇的插件汇总也是我已经写了很久的文章,当然,不是写了很长很久,准确说,应该是积累了很久的一篇文章,里边包含了很多日常工作当中能够一下子解决你的痛痒的插件,可谓是,不犀利不推荐。

现在进入正题。

# 1,Rebuilder。

  • 官方地址:https://plugins.jenkins.io/rebuild
  • 安装方式:在 Jenkins 插件当中直接搜索即可安装。
  • 功能说明:此插件可以直接重复上次构建,也可以用于查看一些参数比较复杂的构建时,上次构建所选的参数是什么。非常 nice 的一个插件。

# 2,AnsiColor。

  • 官方地址:https://plugins.jenkins.io/ansicolor
  • 安装方式:在 Jenkins 插件当中直接搜索即可安装。
  • 功能说明:扩展支持我们在 shell 当中定义的 echo -e 指令,从而给一定的输出上颜色。
  • 使用方式:点此跳转到使用介绍。 (opens new window)

# 3,Maven Release Plug-in。

maven 风格插件。

  • 安装方式:在 Jenkins 插件当中直接搜索即可安装。

# 4,user build vars。

  • 官方地址:https://wiki.jenkins.io/display/JENKINS/Build+User+Vars+Plugin
  • 安装方式:在 Jenkins 插件当中直接搜索即可安装。
  • 功能说明:通过此插件,让整个 Jenkins 系统中的用户参数成为一个可调用的变量。
  • 使用方式:在构建环境中选中 Set Jenkins user build variables。

image

选中之后,即可在当次构建的全程里调用对应的变量了。

变量分为如下几种:

  • Full name :全名
  • BUILD_USER_FIRST_NAME:名字
  • BUILD_USER_LAST_NAME :姓
  • BUILD_USER_ID :Jenkins 用户 ID
  • BUILD_USER_EMAIL :用户邮箱

# 5,Active Choices Plugin

  • 官方地址:https://wiki.jenkins.io/display/JENKINS/Active+Choices+Plugin
  • 安装方式:在 Jenkins 插件当中直接搜索即可安装。
  • 功能说明:根据所选参数,自动调出对应参数所依赖的后续参数。
  • 使用方式:点此跳转到使用介绍。 (opens new window)

# 6,build-name-setter

  • 官方地址:http://wiki.jenkins.io/display/JENKINS/Build+Name+Setter+Plugin
  • 安装方式:在 Jenkins 插件当中直接搜索即可安装。
  • 功能说明:通过这个插件,可以动态更改项目构建的名称。不要小瞧这个功能,有时候合理应用对于工作的效率提升,可是非常高的。比如,常用的钉钉插件推送的信息过于简单,有一些信息无法从中得知,其实它推送的就是项目构建的名称,这个时候我们可以通过更改项目名称,来直接将一些构建的变量进行传递。
  • 使用方式:可以通过这样一个妙用示例对其进行理解。 (opens new window)

# 7,Email Extension Template

  • 官方地址:https://wiki.jenkins.io/display/JENKINS/Email-ext+plugin
  • 安装方式:在 Jenkins 插件当中直接搜索即可安装。
  • 功能说明:Jenkins 部署状态邮件通知插件。
  • 使用方式:可以通过这样一个妙用示例对其进行理解。 (opens new window)

# 8,description setter

  • 官方地址:https://wiki.jenkins.io/display/JENKINS/Description+Setter+Plugin
  • 安装方式:在 Jenkins 插件当中直接搜索即可安装。
  • 功能说明:可以在构建名称下,定义一些描述信息的插件,也是非常好用的插件。
  • 使用方式:可以通过这样一个妙用示例对其进行理解。 (opens new window)

# 9,Git Parameter

  • 官方地址:http://wiki.jenkins-ci.org/display/JENKINS/Git+Parameter+Plugin
  • 安装方式:在 Jenkins 插件当中直接搜索即可安装。
  • 功能说明:在参数化构建步骤当中,可添加 Git 的 branch 或者 tag 来作为参数进行构建。
  • 使用方式:可以通过这样一个妙用示例对其进行理解。 (opens new window)

# 10,Role-Based Strategy

  • 官方地址:https://wiki.jenkins.io/display/JENKINS/Role+Strategy+Plugin
  • 安装方式:在 Jenkins 插件当中直接搜索即可安装。
  • 功能说明:生产当中常用的 Jenkins 用户视图权限管理插件。
  • 使用方式:可以通过这样一个妙用示例对其进行理解。 (opens new window)

# 11,Job Configuration History Plugin

  • 官方地址:https://wiki.jenkins.io/display/JENKINS/JobConfigHistory+Plugin

  • 安装方式:在 Jenkins 插件当中直接搜索即可安装。

  • 功能说明:jenkins 配置当中的后悔药,如果你更改了某个配置,但是现在又想更改回去,没有备份而且忘了,那么可以使用这个插件。

  • 使用方式:提供有 diff 对比功能,以及回滚功能。

    非常友好的配置更改历史记录: image 查看不同,以及配置回滚这里就不演示了。

# 12,Simple Theme

  • 官方地址:http://afonsof.com/jenkins-material-theme/?tdsourcetag=s_pctim_aiomsg
  • 安装方式:在 Jenkins 插件当中直接搜索即可安装。
  • 功能说明:可以自定义 Jenkins 主题的插件。
  • 使用方式:使用方式见官方网站的说明,配置起来非常简单。

img

# 13,Build Trigger Badge

  • 官方地址:https://wiki.jenkins-ci.org/display/JENKINS/Build+Trigger+Badge+Plugin
  • 安装方式:在 Jenkins 插件当中直接搜索即可安装。
  • 功能说明:能够在项目视图首页展示项目构建人的插件。
  • 使用方式:事实上这个功能之前我已经在可以通过这样一个妙用示例对其进行理解这篇文章里通过智慧使用其他方式实现了,只不过现在这个插件可以直接实现对应的功能。如果首页视图当中看不到,可以通过编辑视图,添加 cause 即可看到。

# 14,Console Column Plugin

  • 官方地址:https://wiki.jenkins.io/display/JENKINS/Console+Column+Plugin
  • 安装方式:在 Jenkins 插件当中直接搜索即可安装。
  • 功能说明:能够在项目视图首页展示项目构建输出面板的地址。
  • 使用方式:首页视图中,可以通过编辑视图,添加Last Console即可看到。

# 15,Display Console Output Plugin

  • 官方地址:https://plugins.jenkins.io/display-console-output
  • 安装方式:在 Jenkins 插件当中直接搜索即可安装。
  • 功能说明:点击项目构建之后,可以直接在当前窗口显示构建日志。
  • 使用方式:安装之后默认启用,随便点击一个自由风格的项目构建即可看到效果。

image-20191207182918786

# 16,Version Number

  • 官方地址:https://plugins.jenkins.io/versionnumber/
  • 安装方式:在 Jenkins 插件当中直接搜索即可安装。
  • 功能说明:通过插件的方式提供更加丰富的构建版本号
  • 使用方式:安装之后默认启用,随便点击一个自由风格的项目构建即可看到效果。

# 17,figlet-buildstep

  • 官方地址:https://plugins.jenkins.io/figlet-buildstep/

  • 安装方式:在 Jenkins 插件当中直接搜索即可安装。

  • 功能说明:这个插件允许你在构建过程中输出一个简单的横幅。

  • 使用方式:使用方法我们可以在流水线语法中直接获取:

    figlet '"start build"'
    
    1

    如上代码放到任意地方,会得到如下输出:

    008k1Yt0gy1gtldstgu9uj60w80e20u902

# 18,Hidden Parameter plugin

  • 官方地址:https://plugins.jenkins.io/hidden-parameter (opens new window)

  • 安装方式:在 Jenkins 插件当中直接搜索即可安装。

  • 功能说明:提供了一个隐藏参数项的功能,即可以添加一个参数,而并不会在构建页面显示。这种适用于一些不必展示的参数,使用接口调用构建时,也能通过调整该参数进行自定义构建。

  • 使用方式

    • 如果是 freestyle 风格的,则直接在页面配置即可:

    • 如果是 pipeline 风格,则可通过如下方式进行定义,如下定义方式,我搜遍了全网,没有遇到直接给出定义方法的案例,看到这里,独此一家:

      //分支代码对应
      def ChoiseEnv() {
          return [
              [$class: 'WHideParameterDefinition', name: 'COMMID', defaultValue: '666',description:'提交ID']
          ]
      }
      
      properties([
          parameters(ChoiseEnv())
      ])
      
      pipeline {
          agent any
          environment {
              // 服务名称
              SERVICE_NAME="${JOB_BASE_NAME}"
              MODE="DEPLOY"
              REASON="无"
              REMOTE_HOST="占位"
              _VERSION="测试验证"
              ROBOT_KEY="6a781aaf-0cda-41ab-9bd2-ed81ee7fc7"
              // 主项目地址
              GIT_URL = "https://gitlab.eryajf.net/ops/test.git"
          }
          parameters {
              string(name: 'BRANCH', defaultValue: 'master', description: '请输入将要构建的代码分支')
          }
          options {
              timestamps() // 输出构建日志打印时间信息
              timeout(time: 10, unit: 'MINUTES') // 设置构建超时时间
              buildDiscarder(logRotator(numToKeepStr: '15')) // 设置历史构建保留次数
              gitLabConnection('gitlab-token') // 操作gitlab的token
          }
          triggers{
              gitlab(triggerOnPush: false,triggerOnMergeRequest: true,branchFilterType: 'All',secretToken: "${env.GIT_TOKEN}") // 预留Gitlab提交自动构建
          }
          stages {
              stage('拉取代码') {
                  steps {
                      script {
                          try {
                              checkout(
                                  [$class: 'GitSCM', doGenerateSubmoduleConfigurations: false, submoduleCfg: [], extensions: [[$class: 'CloneOption', depth: 1, noTags: false, reference: '', shallow: true]],
                                  branches: [[name: "$BRANCH"]],userRemoteConfigs: [[url: "${env.GIT_URL}", credentialsId: "cicd-pass"]]]
                              )
                              // 定义全局变量
                              env.COMMIT_ID   = sh(script: 'git log --pretty=format:%h',  returnStdout: true).trim() // 提交ID
                              env.COMMIT_USER = sh(script: 'git log --pretty=format:%an', returnStdout: true).trim() // 提交者
                              env.COMMIT_TIME = sh(script: 'git log --pretty=format:%ai', returnStdout: true).trim() // 提交时间
                              env.COMMIT_INFO = sh(script: 'git log --pretty=format:%s',  returnStdout: true).trim() // 提交信息
                          }catch(exc) {
                              env.REASON = "拉取代码出错"
                              throw(exc)
                          }
                      }
                  }
              }
      
              stage('检测项目') {
                  steps {
                      script {
                          try {
                              sh '''
                                  cat README.md
                                  echo ${COMMID}
                              '''
                              sh "printenv"
                          }catch(exc) {
                              env.REASON = "检测项目出错"
                              throw(exc)
                          }
                      }
                  }
              }
          }
      
          post {
              always {
                  script{
                      wrap([$class: 'BuildUser']){
                          buildName "#${BUILD_ID}-${BRANCH}-${BUILD_USER}" // 更改构建名称
                          currentBuild.description = "提交者: ${COMMIT_USER}" // 添加说明信息
                          currentBuild.description += "\n构建主机: ${REMOTE_HOST}" // 添加说明信息
                          currentBuild.description += "\n提交ID: ${COMMIT_ID}" // 添加说明信息
                          currentBuild.description += "\n提交时间: ${COMMIT_TIME}" // 添加说明信息
                          currentBuild.description += "\n提交内容: ${COMMIT_INFO}" // 添加说明信息
                      }
                      sh "printenv"
                  }
                  cleanWs()
              }
          }
      }
      
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
      26
      27
      28
      29
      30
      31
      32
      33
      34
      35
      36
      37
      38
      39
      40
      41
      42
      43
      44
      45
      46
      47
      48
      49
      50
      51
      52
      53
      54
      55
      56
      57
      58
      59
      60
      61
      62
      63
      64
      65
      66
      67
      68
      69
      70
      71
      72
      73
      74
      75
      76
      77
      78
      79
      80
      81
      82
      83
      84
      85
      86
      87
      88
      89
      90
      91
      92
      93

# 19,Config File Provider

  • 官方地址:https://plugins.jenkins.io/config-file-provider
  • 安装方式:在 Jenkins 插件当中直接搜索即可安装。
  • 功能说明:提供全局配置管理的一种优雅方式,通常在 pipeline 中的一些认证会用到这个配置。
  • 使用方式:添加一些诸如 k8s 认证文件 config 配置的功能。

# 20,extended-choice-parameter

  • 官方地址:https://plugins.jenkins.io/extended-choice-parameter
  • 安装方式:在 Jenkins 插件当中直接搜索即可安装。
  • 功能说明:提供了一种灵活地参数化能力。回滚使用的这个插件。
  • 使用方式:实现回滚版本选项列表的插件。

# 21,Docker Pipeline

  • 官方地址:https://plugins.jenkins.io/docker-workflow
  • 安装方式:在 Jenkins 插件当中直接搜索即可安装。
  • 功能说明:提供了 pipeline 中 docker 环境隔离的能力。
  • 使用方式:使用方式参考这里 (opens new window)。

# 22,MySQL Database

  • 官方地址:https://plugins.jenkins.io/database-mysql/
  • 安装方式:在 Jenkins 插件当中直接搜索即可安装。
  • 功能说明:提供了 pipeline 中调用 MySQL 进行增删改查的能力。
  • 使用方式:使用方式参考这里 (opens new window)。
微信 支付宝
#jenkins#plugins
上次更新: 2024/07/04, 22:40:37
Jenkins-pipeline语法之错误处理详解(文末有干货)
Jenkins所遇报错汇总及解决

← Jenkins-pipeline语法之错误处理详解(文末有干货) Jenkins所遇报错汇总及解决→

最近更新
01
学习周刊-总第211期-2025年第20周
05-15
02
记录二五年五一之短暂回归家庭
05-09
03
学习周刊-总第210期-2025年第19周
05-09
更多文章>
Theme by Vdoing | Copyright © 2017-2025 | 点击查看十年之约 | 浙ICP备18057030号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式