基于 Rainbond 的 Pipeline(流水线)插件

背景

Rainbond 本身具有基于源码构建组件的能力,可以将多种编程语言的代码编译成 Docker 镜像,但是在持续集成的过程中,往往会需要对提交的代码进行静态检查、构建打包以及单元测试。之前由于 Rainbond 并没有 Pipeline 这种可编排的机制,所以用户往往只能通过集成外部的 CI ,如 Jenkins、Gitlab CI 等。这给开发者的使用增加了门槛。

所以为了更有效的帮助开发人员做代码测试,编译缓存,甚至代码质量分析等,结合 Rainbond 的插件体系,拓维信息基于 GitLab CI 能力实现了更加灵活,更加多样化的源码构建的功能。

流水线插件

功能

基于 Rainbond 的插件体系,拓维信息贡献的流水线插件主要功能包括以下五部分:

  1. 流水线管理: 开发者使用流水线模块自定义应用服务所需要的流水线,以及流水线的各个阶段

  1. 应用服务: 应用服务就是 Gitlab 上某一个项目的代码仓库,应用于开发, 管理代码仓库。通常对应Rainbond 中的组件,如果一个仓库下包含多个微服务,则可能对应多个 Rainbond 组件

  1. 代码管理: 管理代码仓库中各分支与 CI 的持续集成流程,可以查看到对应代码仓库分支的最近提交和持续集成的历史信息。

  1. 镜像仓库: 持续集成生成的 image 制品和版本均会在此展示,可以在这里将生成的镜像手动部署到指定环境。

  1. 部署历史: 镜像仓库版本部署到 Rainbond 应用下的历史记录,可以从部署详情中跳转到对应组件进行管理。

安装

流水线插件已经发布到应用市场,可通过开源应用商店一键安装。目前该插件使用需要满足以下前提条件:

  • Rainbond v5.12.0 版本
  • 有可用的 Gitlab 和 Gitlab Runner

Gitlab 和 Gitlab runner 也可通过开源应用商店一键安装。安装流程如下:

  1. 平台管理-应用市场-开源应用商店 中搜索 GitlabGitlab runner 一键安装并进行配置;
  2. 平台管理-应用市场-开源应用商店 中搜索 Pipeline 一键安装;

具体配置和使用参考:Pipeline 使用文档

使用

在插件全部运行起来以后,回到团队视图进行刷新,可以看到左侧边栏有 Rainbond 流水线 选项,点击即可进入。流水线插件主要使用流程如下图所示,主要分为四步:创建流水线模版->创建应用服务->构建->部署到平台

创建流水线模版

用户可以在模版中定义流水线的各个阶段,默认提供了NodeJS、Java、Go、Python的流水线模版,可以在内部自定义流水线的各个阶段。

创建应用服务

在有了流水线模版之后,我们需要去创建一个应用服务。应用服务实际上是将代码仓库和流水线模版关联起来,最终实现该代码仓库的代码通过该流水线模版进行构建。

构建代码

代码管理->分支管理中手动触发流水线构建,构建过程可以在代码管理->持续集成中查看。构建完成后,镜像会推送到流水线模版中定义的镜像仓库地址。可以在镜像仓库查看镜像制品。

部署业务

完成第一次构建后,可以在镜像仓库查看到镜像信息,此时选择部署,可以选择该团队下的应用,组件的名称将以应用服务的名称进行定义。部署完成后,可以在部署历史中查看到该次部署详情,点击查看详情即可跳转到对应组件进行管理,后续提交代码即可实现自动构建和部署。

优秀的个人博客,低调大师

微信关注我们

原文链接:https://my.oschina.net/rainbond/blog/8447572

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
Oracle Database,又名Oracle RDBMS

Oracle Database,又名Oracle RDBMS

Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的、适应高吞吐量的数据库方案。

Eclipse(集成开发环境)

Eclipse(集成开发环境)

Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。

Java Development Kit(Java开发工具)

Java Development Kit(Java开发工具)

JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。

Sublime Text 一个代码编辑器

Sublime Text 一个代码编辑器

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。