Tech
[开源软件] 做了个小项目:让只有 Java 8 的 AIX / Solaris / 老 RHEL 机器继续当新版 Jenkins 的 agent
传统企业 CI 里很常见的一个老问题:很多软件要支持 AIX 、HP-UX 、Solaris 、RHEL 6 这些平台,构建机都是 Jenkins agent ,但这些系统上的 Java 基本停在 8 。
Jenkins 这几年把 Java 要求从 8 抬到 11 、17 ,现在是 21 ,而且 agent 也必须满足。IT 安全扫描一来,controller 必须升级,升级完这些老 agent 就连不上了。要么再养一套老 Jenkins ,要么这些平台手动构建。SSH 类插件也有人用,但老机器就不再是一个真正的节点了。
所以做了 Agent8:把官方的 agent.jar 用 JvmDowngrader 降级成 Java 8 字节码,再加一个 Java agent ,处理 controller 运行时发过来的 class 、serialVersionUID 变化、新集合的序列化格式、OpenJ9 的兼容问题。老机器还是一个普通节点,sh 、junit 、stash 、中断、Git checkout 都能用。
https://github.com/keelinfra/ag...
Read the full discussion on V2EX
This article was aggregated from V2EX. Click to join the conversation.
View on V2EX