Jenkins离线解决插件兼容性-Jenkins(二)

最近笔者公司在大势所趋下, 终于将代码管理工具从 Subversion 换成了 Git. 代码仓库选用的是 Gitlab, 由于原先项目就使用 Jenkins 做编译服务器, 版本为 2.2204.0. 与现在 Jenkins Release 最新的稳定版本 2.289.1 还是有一定时间差距的, 那么大部分最新的插件都无法直接集成.

背景介绍

笔者需要完成开发者将代码提交到 Gitlab 的指定分支后, 通过 webhook 将事件主动推送给 Jenkins服务器. 对如何推送感兴趣的同学请移步博文 GitLab 自动触发 Jenkins 构建

笔者在安装 gitlab hook 和 gitlab plugin 两个插件时遇到了插件兼容性问题

插件之间版本不兼容

在这里插入图片描述

从上图中, 我们很容易可以得知: Gitflow Plugin:v1.0.1 安装失败了. 原因是缺少它的依赖项 maven-plugin:v2.13 后的版本. 这里推荐去国内的镜像站, 如清华大学的镜像站: https://mirrors.tuna.tsinghua.edu.cn/jenkins/

下载最新版本插件, 下载的插件都是 *.hpi 结尾的. 如果 Jenkins 服务器可以访问公网, 那么直接进入 Jenkins -> Manage Jenkins -> Manage Plugins -> update 勾选下载即可

Jenkins版本太低导致插件不支持

在这里插入图片描述

从报错中可知, Pipeline Declarative Extension Points API:v1.3.2 版本的这款插件不支持在 Jenkins:v2.60.3 中运行, 只需要将 Jenkins 的版本提升到 2.73.3 以上就可以了

前往 Jenkins 官网自行下载最新版 https://www.jenkins.io/download/
注意: 各位同学根据自己环境上 Jenkins 部署的方式选择升级方案

Jenkins版本升级后有BUG

但是笔者碰到一个比较坑的事情, 公司部署的 Jenkins 在升级 war 包之后, 在 project config 页面出现了致命 bug, 导致无法操作项目配置. 那么留给我的路只有两条: 1. 卸载旧版 Jenkins 2. 对插件版本进行降级
在实际操作中, 考虑到原先部署的 Jenkins 中各色插件、全局配置, 情况较为复杂, 所以卸载旧版 Jenkins 重新部署, 对我来说代价也比较大. 所以选择了第二条路, 放弃最新版的插件, 转而选择降低 plugin 版本, 来兼容 Jenkins 版本.

这里需要注意的是, Jenkins 虽然三方插件非常强大, 但是没有像 maven 一样的 dependency tree, 我们只能一个个版本去尝试.
如果遇到由于插件安装失败而无法卸载. 我们还可以进入 Jenkins 的工作目录, 笔者是 docker 方式部署的, 进入容器后进入工作目录

jenkins@f1be5415da22:~$ pwd
/var/jenkins_home

进入插件文件夹, 并将安装失败的插件删除

jenkins@f1be5415da22:~$ cd plugins/
jenkins@f1be5415da22:~/plugins$ ls
ace-editor
ace-editor.jpi

这里假设 ace-editor 插件安装失败了, 我们将它删除即可.
没事别乱删插件! 没事别乱删插件! 没事别乱删插件!

jenkins@f1be5415da22:~/plugins$ rm -rf ace-editor*
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要进行Jenkins离线安装插件,需要以下步骤: 1. 首先,从Jenkins官网下载Jenkins的war文件并将其安装在目标服务器上。你可以使用以下命令进行下载: java -jar jenkins-plugin-manager-2.12.11.jar --war C:\Users\xunliu\Desktop\jenkins\jenkins.war 2. 创建一个plugins.txt文件,其中包含你需要安装的插件列表。确保每个插件都以插件名称:版本号的格式列出,每行一个插件。例如: delivery-pipeline-plugin:1.3.2 deployit-plugin 3. 将plugins.txt文件和插件文件上传到目标服务器上的某个位置,例如:C:\Users\xunliu\Desktop\jenkins\plugins.txt。 4. 使用以下命令安装插件: java -jar jenkins-plugin-manager-2.12.11.jar --war C:\Users\xunliu\Desktop\jenkins\jenkins.war --plugin-file C:\Users\xunliu\Desktop\jenkins\plugins.txt 5. 将插件文件移动到Jenkins插件目录中: cp /root/.jenkins/plugins/* /root/.jenkins/plugins/ 通过以上步骤,你可以在Jenkins离线环境中安装插件。请确保插件文件与插件名称及版本号的对应关系正确,并且将插件文件放置在正确的目录中。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Jenkins离线部署方法](https://blog.csdn.net/liuxun524270348/article/details/129744369)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值