Jenkins 管理插件
管理插件
插件是增强Jenkins环境功能以满足组织或用户特定需求的主要手段。有超过一千种不同的插件 ,可以安装在Jenkins主机上,并集成各种构建工具,云提供商,分析工具等等。
可以从更新中心自动下载插件及其依赖关系 。更新中心是由Jenkins项目运营的一项服务,该项目提供了由Jenkins社区的各种成员开发和维护的开源插件的清单。
本节将介绍从Jenkins Web UI中管理插件的基础知识到主文件系统的更改。
安装插件
Jenkins提供了几种不同的方法来在主机上安装插件:
- 在Web UI中使用“插件管理器”。
- 使用Jenkins CLI install-plugin命令。
每种方法将导致插件由Jenkins加载,但可能需要不同级别的访问权限和权衡才能使用。
这两种方法要求Jenkins管理员能够从更新中心下载元数据,无论是由Jenkins项目运行的主更新中心 ,还是自定义更新中心。
插件被打包为自包含的.hpi文件,它们具有插件需要成功运行的所有必需的代码,图像和其他资源。
来自Web UI
安装插件的最简单和最常见的方法是通过 管理Jenkins > 管理插件视图,可供Jenkins环境的管理员使用。
在“ 可用”选项卡下,可以搜索并考虑可从配置的“更新中心”下载的插件:
大多数插件可以通过检查插件旁边的框立即安装和使用,然后单击安装而不重新启动。
如果可用插件列表为空,则主机可能配置不正确或尚未从更新中心下载插件元数据。单击立即检查按钮将强制Jenkins尝试联系其配置的更新中心。
使用Jenkins CLI
管理员也可以使用Jenkins CLI来提供安装插件的命令。管理Jenkins环境的脚本或配置管理代码可能需要在Web UI中安装插件,而无需直接的用户交互。Jenkins CLI允许命令行用户或自动化工具下载插件及其依赖项。
java -jar jenkins-cli.jar -s http://localhost:8080/ install-plugin SOURCE ... [-deploy] [-name VAL] [-restart]
Installs a plugin either from a file, an URL, or from update center.
SOURCE : If this points to a local file, that file will be installed. If
this is an URL, Jenkins downloads the URL and installs that as a
plugin.Otherwise the name is assumed to be the short name of the
plugin in the existing update center (like "findbugs"),and the
plugin will be installed from the update center.
-deploy : Deploy plugins right away without postponing them until the reboot.
-name VAL : If specified, the plugin will be installed as this short name
(whereas normally the name is inferred from the source name
automatically).
-restart : Restart Jenkins upon successful installation.
高级安装
更新中心仅允许安装最新发布的插件版本。在需要旧版本插件的情况下,Jenkins管理员可以下载较旧的.hpi存档,并手动将其安装在Jenkins主机上。
来自 Web UI
假设.hpi已下载文件,登录的Jenkins管理员可以从Web UI中上载该文件:
- 浏览到Web界面中的“ 管理Jenkins > 管理插件”页面。
- 单击高级选项卡。
- 选择“ 上传插件”部分.hpi下的文件。
- 上传插件文件。
一旦插件文件被上传,必须手动重新启动Jenkins主机,从而更改生效。
在管理员上
假设.hpi系统管理员已经明确下载了一个文件,管理员可以手动将.hpi文件放在文件系统的特定位置。
将下载的.hpi`文件复制到JENKINS_HOME/pluginsJenkins主目录中(例如,Debian系统JENKINS_HOME一般 /var/lib/jenkins)。
在插件加载并在Jenkins环境中可用之前,主人将需要重新启动。
更新站点中的插件目录的名称并不总是与插件的显示名称相同。搜索 plugins.jenkins.io 以获取所需的插件将提供相应的.hpi文件链接。
更新插件
更新列在“ 管理插件”页面的“ 更新”选项卡中,可以通过选中所需插件更新的复选框并单击“ 立即下载并重新启动”按钮后进行安装。
默认情况下,Jenkins管理将每24小时检查一次更新中心的更新。要手动触发检查更新,只需点击更新选项卡上的立即检查按钮。
删除一个插件
当插件不再在Jenkins环境中使用时,从Jenkins主机中删除插件是谨慎的。这提供了许多好处,例如在启动或运行时减少内存开销,减少Web UI中的配置选项,以及消除与新插件更新的未来冲突的潜力。
卸载插件
卸载插件的最简单的方法是导航到“ 管理插件”页面上的“ 已安装”选项卡。从那里,Jenkins将自动确定哪些插件安全卸载,那些不依赖于其他插件的插件,并提供一个这样做的按钮。
也可以通过.hpi
从JENKINS_HOME/plugins
主机上的目录中删除相应的文件来卸载插件。该插件将继续运行,直到主机重新启动。
如果某个插件.hpi文件已被删除但其他插件需要,则Jenkins主机可能无法正确启动。
卸载插件并不会删除插件可能已经创建的配置。如果存在引用插件创建的数据的现有作业/节点/视图/构建/ etc配置,则Jenkins将在引导期间警告某些配置无法完全加载,并忽略无法识别的数据。
由于配置将被保留,直到它们被覆盖,重新安装插件将导致这些配置值重新出现。
删除旧数据
Jenkins提供了通过卸载的插件清除配置的设施。导航到管理Jenkins,然后单击管理旧数据以查看和删除旧数据。
禁用插件
禁用插件是退出插件的较软的方式。Jenkins将继续认识到该插件已安装,但它不会启动该插件,并且此插件不会提供任何扩展。
Jenkins管理员可以通过取消选中“ 管理插件”页面的“ 已安装”选项卡上的框(见下文)来禁用插件 。
统管理员也可以通过在Jenkins主机上创建文件来禁用插件,例如:JENKINS_HOME/plugins/PLUGIN_NAME.hpi.disabled。
由禁用的插件创建的配置就像插件被卸载一样,只要它们在引导时引起警告,但是会被忽略。
固定插件
固定插件功能已在Jenkins 2.0中删除。版本晚于Jenkins 2.0不会捆绑插件,而是提供一个向导来安装最有用的插件。
固定插件的概念适用于与Jenkins 1.x捆绑的插件,例如 Matrix授权插件。
默认情况下,每当Jenkins升级时,其捆绑的插件将覆盖当前安装的插件版本JENKINS_HOME。
但是,当手动更新捆绑的插件时,Jenkins会将该插件标记为特定版本。在文件系统上,Jenkins创建一个空文件,JENKINS_HOME/plugins/PLUGIN_NAME.hpi.pinned 用于指示固定。
Jenkins启动期间,固定插件永远不会被捆绑插件覆盖。(较新版本的Jenkins会警告您,如果固定插件 比当前捆绑的旧版本更旧)。
将捆绑插件更新到Update Center提供的版本是安全的。这通常是获取最新功能和修复程序所必需的。捆绑版本偶尔更新,但不一致。
插件管理器允许明确地取消固定插件。该 JENKINS_HOME/plugins/PLUGIN_NAME.hpi.pinned文件也可以手动创建/删除以控制钉扎行为。如果该pinned文件存在,Jenkins将使用用户指定的任何插件版本。如果文件不存在,Jenkins将在启动时将插件恢复为默认版本。