Jenkins常用插件分享

那弘
2023-12-01

    Jenkins拥有众多的扩展,可以让你在使用Jenkins时创建更实用的构建工程,下面就对Jenkins一些常用的插件使用进行说明,后续也会对扩展的个数持续更新。更多的扩展请参考官方扩展

建议:插件的安装都通过Jenkins的插件管理进行安装。本文的安装都是通过插件管理来进行安装的。在网络不允许的情况下也可以通过下载插件手动安装,这样的安装方式在处理依赖时会比较麻烦。

Safe Restart Plugin

简介:
顾名思义,该插件的作用就是安全的重启Jenkins服务。
用法:
安装该插件后,会在左侧导航栏提供一个Restart Safely按钮,点击即可重启服务。

Localization: Chinese (Simplified)

简介:
Jenkins 简体中文语言包。
用法:
该插件安装后自动生效。

这个可以说是最有用的插件了。

Git

简介:
用于下载用Git管理的代码。
用法:
在Jenkins创建自由构建任务时,在源码管理部分,选择Git,有几个参数需要填写。
Repository URL: 下载代码的Git地址,需要指定到仓库。
Credentials: 访问代码仓库的密钥对。
Branches to build: 需要构建的分支。
Additional Behaviours: 可选参数。

  • check out to a sub-directory 将代码下载到一个指定目录,否则默认下载到工程目录下。
  • Clean after checkout 下载代码后执行clean操作。
  • Clean before checkout 下载代码前执行clean操作。

GitLab

简介:
用于Jennkins与GitLab通信,可以将Jenkins的构建结果回传至GitLab,在GitLab上进行展示。
用法:
配置: 在Jenkins的系统管理→系统设置里面找到GitLab,分别填写。
Connection name: 这个属性自行填写,任意值,会在任务中使用。
Gitlab host URL: GitLab服务的访问地址。
Credentials: 选择添加的GitLab API Token
使用:
1.在构建任务的基本设置中,GitLab Connection的值为之前配置的Connection name的值。
2.在构建后操作中选择Publish build status to GitLab

SSH Slaves

简介:
用于创建Unix Node节点,可以将任务下发到节点上。
用法:
配置: 在Jenkins的系统管理→节点管理→新建节点,填写节点名称,选择固定节点。
填写节点信息:
名字: 在新建节点时已经填写,这里可以修改。
描述: 节点的描述,可选。
并发构建数: 节点的并发任务数量,根据节点性能而定。
远程工作目录: 节点的工作目录,必填。
标签: 给节点分配一个标签,可以将多个节点分配为同一个标签,形成一个资源池。
用法:

  • 尽可能使用该节点。–表示在机器空闲时,都有可能分配到该节点执行任务。
  • 只允许运行绑定到这台机器的Job

启动方式: 选择Launch agent agents via SSH

  • 主机:填写IP地址
  • Credentials:创建一个用户密码凭据
  • Host Key Verification Strategy:选择Non verifying verification strategy

Maven Integration

简介:
Maven插件,Jenkins与Maven集成,可以创建Maven任务。
用法:
配置: 在Jenkins的系统管理→全局工具配置,找到Maven安装。

  • Name:自定义名称。
  • MAVEN_HOME:maven安装路径,使用yum安装时填/usr/share/maven

在新建任务时,选择构建一个maven项目。在Build阶段,指定pom文件,以及构建参数。

  • Root POM:指定pom文件。
  • Goals and options:构建参数,如clean、package、install,多个参数空格隔开。

Folders

简介:
可以以创建任务的方式创建文件夹。,这里的文件夹可以理解为一个Namespace,在不同的文件夹下面,可以创建名字相同的任务。
用法:
点击新建任务,输入名称,选择类型为文件夹。创建好后,在文件夹内创建任务即可。

Timestamper

简介:
在Jenkins控制台增加时间输出,可以方便定位。
用法:
1.自由构建任务,在任务的配置里面,勾选Add timestamps to the Console Output,勾选上之后,就会在Jenkins控制台输出时间信息。
2.流水线构建任务,在系统管理→系统设置里面有个全局设置Enabled for all Pipeline builds,勾选之后会自动为所有的流水线启用该功能。就不需要在流水线中再添加timestamps {} 或者timestamps()

Publish Over SSH

简介:
将构建产物或者指定命令下发到指定主机。
用法:
配置:在系统管理→系统设置里面找到Publish over SSH,主要填写SSH Servers这里的内容,其余内容可以使用默认值。

  • Name:主机名称,填写之后会在任务中提供选取。
  • Hostname:填写主机IP
  • Username:登录主机的账号名
  • Remote Directory:远程地址,任务中配置的路径为该路径的相对路径,不填写默认为用户目录。
    选择高级选项,勾选Use password authentication, or use a different key,使用密码验证的方式进行链接。

下面有个Test Configuration,测试链接,出现Success即表示链接成功。

任务配置:在任务的构建后操作中选择Send build artifacts over SSH

  • Name:之前在系统设置里面填写的名称。
  • Source files:需要上传到远程主机的文件,这里填写WORKSPACE的相对路径。
  • Remove prefix:删除路径部分。

举个栗子:如果Source files为target/*.war,Remove prefix为target,这样在远端就只会有war包,否则会在远端创建target目录。

  • Remote directory:远端工作路径,相对于系统配置里面设置的路径。
  • Exec command:用于在远端执行的命令行。

特别提醒:这里的Remote DirectorySource filesRemove prefixRemote directory一定要做下测试理解下,理解各路径是怎么对应的,填写值时和使用默认值的差别,不然容易懵圈。

Multiple SCMs

配置多个代码下载地址,在需要下载多个仓库代码时使用。

 类似资料: