自定义Jenk必威国际有限公司ins分发构建服务

目标:提供开箱即用的解决方案,将Jenkins发行版打包为WAR文件或Docker映像必威国际有限公司

状态:完全的

团队

细节

这个项目背后的主要思想是构建一个可定制的Jenkins分发服务,该服务可以用来构建定制的Jenkins分发。必威国际有限公司该服务将为用户提供一个简单的界面,以选择他们想要使用插件、授权矩阵等构建实例的配置。此外,它还包括一个分享社区创建的发行版的部分,以便用户可以找到和下载已经构建的Jenkins战争/配置文件,以便开箱即用。必威国际有限公司

关键可交付成果

  • 基于spring引导构建的后端服务具有现代的Restful API支持,可以构造定制的WAR包和配置文件。

  • 构造引擎可以将UI字段转换为配置文件的引擎。

  • 前端应用程序以网站的形式,具有简单的用户界面,供用户交互和定制发布。

  • 存储库共享社区建立最常用的Jenkins配置文件。必威国际有限公司

阶段1计划

  • 从UI绑定开发一个简单的工作流程(Spring引导应用程序)到jcasc yaml文件的生成。

    • 重用来自JCasC Plugin的概念来生成这个JCasC文件。

    • 验证根据JCasC模式生成的配置。

  • 从一个简单的用户界面开始测试工作流。

  • 重用来自jenkins核心的逻辑来构造并在必威国际有限公司可能的情况下呈现所有插件的用户界面。

  • 如果无法呈现,则默认从数据绑定构造函数或JCasC模式构建模式。

  • 第一阶段的博客文章。

评估阶段1

阶段2计划

  • 利用自定义战争包装机(CWP)用于将配置文件转换为WAR包的工具。

  • 如果有必要,可以围绕CWP实现一个新的包装器,以便从这里重用一些逻辑

  • 将上述包装器集成到服务中。

    • 这一步骤应该相对简单,因为CWP库相当简单。

  • 这个服务应该在本周之后才真正成型,因为我们将从:UI→配置→War Package构建整个工作流

  • 托管服务的工作。

  • 博客帖子2阶段2。

评估阶段2

第3期计划

  • 在社区托管的存储库中处理大多数使用的配置文件。

  • 用配置文件建立一个github存储库(Source of Truth),允许用户通过服务共享他们的配置文件

  • 支持工作流程:服务→GitHub

  • 通过Github或jenkins.io的用户登录功能。必威国际有限公司

  • 开发数据库模式以存储用户生成的配置。

  • 将数据库集成到服务中。

    • Spring Boot使得MongoDB集成到其架构中非常容易,因此我们可以利用能够存储私有用户配置。

    • 将数据库添加到服务并将此功能介绍为测试版

  • 完成任何剩下的目标,如测试用例,并在必要时发布新插件的发布

评估阶段3

资源

路线图

可以找到未来的路线图这里

序列图

下图是所提出的序列图的概述:

cd序列图

会晤

办公时间由13:00 UTC的每周二,每周四,举行的每周四会议指出任何人都可以阅读。

获取代码

自定义分发服务是在GSoC期间从零开始创建的,可以找到它在Github上

链接