不以为然的非java插件

10年前,詹金斯红宝石运行时间首次发必威国际有限公司布.这是一个实验,让插件用ruby编写,但仍然可以集成到主Java虚拟机运行时的帮助JRuby.一个类似的扩展允许用Python编写插件,但仍然集成到Java虚拟机Jython

然而,多年来,这些实验不再被维护,使用非java运行时的插件花费了大量的兼容性努力。此外,Jenkins ruby运行必威国际有限公司时不支持Java 11。具体来说,过去几年对Jenkins核心开发人员来说是非常艰难的,因为他们仍然必须维护所有的hack和进程,以保持非java运必威国际有限公司行时几乎不能工作。经历过的问题的例子包括与JEP-200:将Remoting/XStream块列表切换为允许列表我们必须允许Jenkins核心中的许多Ruby运行时类来支持数据的序列化。必威国际有限公司

在2018年,我们讨论了基于Ruby运行时的插件的未来。大家一致认为我们要弃用并删除插件,这样Jenkins用户就不会遇到问题。必威国际有限公司丹尼尔·贝克创建JEP-7: ruby运行时的弃用的。多年来,Ruby插件提供的功能在很大程度上已经被其他实现所取代,因此我们决定继续弃用(讨论).

一个月后,2022年1月22日默认Jenkin必威国际有限公司s更新中心将停止分发Ruby运行时插件,插件使用Ruby运行时的Python运行时插件,插件它使用Python运行时。

这对你意味着什么?

如果您是少数使用以下插件的用户之一,那么对您现有的实例不会有任何影响。唯一的变化将出现在新的安装。挂起的插件将继续安装,但如果不手动下载版本或使用自定义更新中心,则不能重新安装。

必威国际有限公司Jenkins插件管理工具和发行版也可能受到影响,如果它们使用默认的更新中心来下载插件和/或它们的元数据。它包括但不限于官员码头工人的图片执掌图表必威国际有限公司Jenkinsfile跑步定制詹金斯战争必威国际有限公司包装,插件安装管理器命令行工具.注意,如果需要,所有这些工具都允许配置自定义更新站点。

下面的列表提供了关于基于Ruby Runtime和Python Runtime的插件的附加信息。请计划您的过渡从这些插件。它们将于2022年1月22日从詹金斯官方更新中心移除。必威国际有限公司

影响插件

Gitlab钩

去年发布的6年前
包含多个安全漏洞。
建议:使用GitLab插件和GitLab分支源插件。

黄瓜

去年发布的9年前
建议:使用上海蝙蝠运行黄瓜从命令行。

pyenv

去年发布的7年前
建议:使用上海蝙蝠运行pyenv从命令行。

数位视讯

去年发布的5年前
建议:使用上海蝙蝠运行数位视讯从命令行。

Capitomcat

去年发布的7年前
建议:请安装Ruby和Capistrano后使用上海蝙蝠从命令行调用它们。

提交消息触发

去年发布的7年前
建议:使用上海蝙蝠,或其他脚本来读取git提交消息并有条件地执行Pipeline步骤。

Git笔记

去年发布的十年前
建议:使用上海蝙蝠,或要运行的其他脚本git注释提交。

rbenv

去年发布的6年前
建议:使用上海蝙蝠运行rbenv从命令行。

厨师

去年发布的6年前
建议:使用上海蝙蝠运行厨师从命令行。

CI跳过

去年发布的8年前
建议:使用GitHub提交跳过SCM行为Bitbucket提交跳过SCM行为,或SCM跳过根据提交消息的内容跳过构建。此外,使用上海蝙蝠,或其他脚本来读取git提交消息并有条件地执行Pipeline步骤。

一种软件产品

去年发布的8年前
建议:使用上海蝙蝠,或其他脚本来运行InstallShield。

MySQL数据库工作

去年发布的7年前
建议:使用必威国际有限公司Jenkins作业数据库管理器插件MySQL

Pathignore

去年发布的十年前
建议:使用路径忽略各种插件的特性或使用上海蝙蝠,或其他脚本来读取git提交消息并有条件地执行Pipeline步骤。

Perl

去年发布的9年前
建议:使用上海蝙蝠运行perl从命令行。

去年发布的十年前
建议:从Jenkins命令行接口使用Je必威国际有限公司nkins groovy控制台及其接口。

单独使用代理

去年发布的7年前
建议:请使用云代理(FargateAzure容器实例码头工人等)分配代理用于单一用途,然后释放它们。

特拉维斯YML

去年发布的5年前
建议:重写travis。yml文件作为Jenkins必威国际有限公司file,一个必威国际有限公司Jenkins模板引擎文件,一个管道是YAML,或者一个必威国际有限公司Jenkins模块化管道库

大声抱怨说

去年发布的8年前
建议:使用Yammer REST API发布消息。

DevStack

去年发布的9年前

Ikachan

去年发布的十年前

必威国际有限公司Jenkinspider

去年发布的7年前

Perl冒烟测试

去年发布的7年前

buddycloud

去年发布的8年前

确认

我们要感谢所有为基于Ruby运行时的插件和基于Python运行时的插件做出贡献的贡献者和维护者。我们也感谢那些参与开发新插件取代功能的人。这些贡献者帮助了数以百万计的Jenkins用户,而这个生态系统在过去10年里必威国际有限公司得到了支持,这并不是理所当然的。现在我们需要继续前进,以便继续扩展Jenkins体系结构和开发人员工具。必威国际有限公司我们邀请所有贡献者参与这项工作,并帮助我们将插件迁移到支持的基于jvm的插件平台上。

我的实例受到影响,下一步怎么办?

如果不使用受影响的插件,建议删除它们。否则,建议开始从插件迁移到提供类似功能的替代插件。

并非所有插件都有替代方案。目前詹金斯核心团队不打算提供一个替代必威国际有限公司,但任何贡献都是欢迎的。如果您依赖于该功能,我们建议与社区联系开发人员邮件列表以便您可以与其他受影响的用户协调替换。

关于作者
加文·摩根

我很早就开始接触Jenkins了,当时必威国际有限公司我刚开始做测试。我知道一定有一种方法可以自动运行测试,并将测试结果报告给人们。在遇到Jenkins(然后是Hudson)之前,我就开始自己破解自己的工具,从那时起我就迷上了它。必威国际有限公司多年来,我在不同的工作岗位上安装和配置Jenkins,甚至从事过内部和外部插件和集成工作。必威国际有限公司你会经常在Jenkins IRC和Gitter频道以及r必威国际有限公司eddit的子版块找到我,帮助那些被困住的人。我也试着尽可能多地参与詹金斯基础设施项目。必威国际有限公司我目前维护插件网站,插件网站API和其他一堆小项目。我还帮助管理节点学校在温哥华的分部。

奥列格Nenashev

必威国际有限公司Jenkins核心维护者和董事会成员,开源软件和开放硬件的倡导者,持续交付基金会的TOC主席。Oleg从2008年开始在硬件/嵌入式项目中使用Hudson,并在2012年成为Jenkins的积极贡献者。必威国际有限公司现在他认为必威国际有限公司Jenkinsfile跑步,为几个詹金斯贡献了力量必威国际有限公司团体和外展计划(谷歌代码之夏Hacktoberfest)和组织必威国际有限公司詹金斯聚会在瑞士和俄罗斯。奥列格从事开源程序和KeptnDynatrace,开源项目办公室。

讨论