写点什么

Jenkins 将致力于提升稳定性、易用性和云原生兼容性

  • 2018-09-14
  • 本文字数:1267 字

    阅读完需:约 4 分钟

Jenkins 项目团队决定在稳定性和为 Kubernetes 等平台提供更好的支持方面分配一些工作量。前者可能会发生一些向后不兼容的变更,将影响发布模型并提供具有更多预置选项的版本,而后者将在与现有 Jenkins X 项目齐头并进。

Jenkins 目前在处理大型复杂管道方面可能不太稳定。Jenkins 的创始人兼 CloudBees 首席技术官 Kohsuke Kawaguchi 写道,由于资源问题和插件的升级,部分部署需要频繁重启。配置可能很脆弱,插件管理以及更改构建作业的设置可能会无法立即可见。为避免对系统造成破坏,系统管理员对变更总是犹豫不决。最终用户体验很复杂,因为 Jenkins 需要配置太多组件才能完成工作。由于没有足够的测试覆盖率,Jenkins 本身的开发速度受到限制。因为评审的周期太长,新老开发者的贡献受到了影响,这可能会对他们未来的贡献造成阻碍。

该提案的一部分试图通过更改发布模型并在保持向后兼容性方面采取措施来解决这些问题。在 Jenkins World 2017 贡献者峰会上,Kawaguchi 划定了应该开箱即用的 Jenkins 功能和需要管理员配置的功能区分。后者包括设置 HipChat/Slack 集成、Webhook 集成以及系统层面的设置(如用于电子邮件通知的 SMTP)。他还提出,部分解决方案是“将核心和一些重要的插件作为基础”,这样 Jenkins 就可以预先配置它们并缩短花在配置上的时间。 Jenkins 2.0 模型将继续,但可能会引入破坏向后兼容性的变更。

Jenkins Cloud Native SIG 驱动的云原生 Jenkins 提议是关于在 Kubernetes 等云原生平台上运行 Jenkins。 Jenkins X 平台就是这样的一个项目,它使用 Jenkins 作为核心引擎,并增加了一个工具集。Kawaguchi 表示,云原生 Jenkins 的未来是朝着 Jenkins X 的方向发展。这个版本的 Jenkins 很可能有一个不同的架构——将各种功能作为单独的微服务,使用功能即服务,而不是现在的这种构建进程,以及通过Kubernetes 自定义资源进行交互的服务。当前存储在文件系统上的数据将被移动到云存储服务。 Jenkins Configuration as Code (JCasC)项目尝试使用 Jenkins 主节点的声明性配置解决一些配置问题。此外, Jenkins Evergreen 项目“为最终用户提供了可以立即用于实现 CI 和 CD 工作负载的预装配件集”。Evergreen 可以进行自动更新。这两个将是云原生计划的关键部分。其他 CI 解决方案(如 Gitlab CI )已经可以与托管 Kubernetes 服务集成。

Jenkins X 通过环境的概念在Kubernetes 上实现微服务部署,环境概念表示源代码存储库中给定点的一组协同工作的服务。我们可以为Dev、Staging 和Production 或任何其他发布阶段创建环境。环境映射到Kubernetes 名称空间。Jenkins X 提供了一个名为jx 的命令行工具,可用于管理环境、在环境之间切换以及升级Jenkins 平台本身。它目前可以在MacOS 和Linux 上运行,并支持主要的云提供商,如AWS、GKE 和Azure。

考虑到其他CI 工具已经提供了类似的支持,有些用户认为这些努力为时已晚,但Jenkins 拥有庞大的用户群,或许它仍然可以给这些用户和新用户带来好处。

查看英文原文 Jenkins to Focus Efforts on Stability, Ease of Use and Cloud Native Compatibility

2018-09-14 15:231363
用户头像

发布了 731 篇内容, 共 455.2 次阅读, 收获喜欢 2003 次。

关注

评论

发布
暂无评论
发现更多内容

架构实战营模块二作业

周烨

React源码分析2-深入理解fiber

flyzz177

React

ReactDOM.render在react源码中执行之后发生了什么?

flyzz177

React

前端leetcde算法面试套路之树

js2030code

JavaScript LeetCode

百度工程师带你探秘C++内存管理(ptmalloc篇)

百度Geek说

c++ Linux 内存管理 12 月 PK 榜

前端面试比较好的回答

loveX001

JavaScript

React源码分析3-render阶段(穿插scheduler和reconciler)

flyzz177

React

前端leetcde算法面试套路之堆

js2030code

JavaScript LeetCode

跨平台应用开发进阶(二十六) :忐忑悲壮路,心酸出坑史——记第一次iOS艰辛上架路

No Silver Bullet

uni-app iOS上架 12月月更 问题汇总

最新前端面试总结

loveX001

JavaScript

程序员职场晋升:与阿里前P9的一次近距离互动

博文视点Broadview

架构训练营 模块二作业

提姆

架构训练营10期

微信朋友圈高性能复杂度分析

LT

架构实战营

二十大专题,3000道 Java后端核心面试解析,国内超牛的《Java 面试突击核心手册》重磅来袭!

架构师之道

编程 程序员 java面试

promise执行顺序面试题令我头秃,你能作对几道

loveX001

JavaScript

React源码分析4-深度理解diff算法

flyzz177

React

跨平台应用开发进阶(二十四) :uni-app实现文件下载并保存

No Silver Bullet

uni-app 12月月更 文件下载 文件保存

如何使用 Towify 在小程序中实现勾选用户协议后登录?

Towify

微信小程序 无代码 触发器

三次握手与四次挥的问题,怎么回答?

loveX001

JavaScript

React源码解读之React Fiber

flyzz177

React

DevData Talks | 大咖集结『研发效能答疑专场』即将开始!

思码逸研发效能

研发管理 研发效能 研发管理工具

2022 阿里灵杰AI开发者峰会内容抢先看!

阿里云大数据AI技术

人工智能 阿里云

如何配置分享到微信功能?

Towify

微信小程序 无代码 触发器

教你用JavaScript完成简易贪吃蛇小游戏

小院里的霍大侠

JavaScript 编程开发 实战案例 初学者 入门实战

ClassLoader 隔离性的基石是namespace,证明给你看

小小怪下士

Java 程序员 面试

React源码解读之任务调度

flyzz177

React

数据库原理及MySQL应用 | 日志管理

TiAmo

数据库 日志 12月月更

用javascript分类刷leetcode23.并查集(图文视频讲解)

js2030code

JavaScript LeetCode

跨平台应用开发进阶(二十五) :uni-app实现IOS云打包解决IOS提交审核相册等隐私描述语导致审核失败问题

No Silver Bullet

uni-app 12月月更 IOS云打包 提交审核 隐私描述语

架构实战营 - 模块 2- 作业

zealot0317

关系型数据库设计三大范式

京东科技开发者

关系型数据库 数据库设计 范式 冗余 数据库·

Jenkins将致力于提升稳定性、易用性和云原生兼容性_DevOps & 平台工程_Hrishikesh Barua_InfoQ精选文章