基于 Rainbond 的 Pipeline(流水线)插件
· 阅读需 6 分钟
Rainbond 本身具有基于源码构建组件的能力,可以将多种编程语言的代码编译成 Docker 镜像,但是在持续集成的过程中,往往会需要对提交的代码进行静态检查、构建打包以及单元测试。之前由于 Rainbond 并没有 Pipeline 这种可编排的机制,所以用户往往只能通过集成外部的 CI ,如 Jenkins、Gitlab CI 等。这给开发者的使用增加了门槛。
所以为了更有效的帮助开发人员做代码测试,编译缓存,甚至代码质量分析等,结合 Rainbond 的插件体系,拓维信息基于 GitLab CI 能力实现了更加灵活,更加多样化的源码构建的功能。

流水线插件
功能
基于 Rainbond 的插件体系,拓维信息贡献的流水线插件主要功能包括以下五部分:
- 流水线管理: 开发者使用流水线模块自定义应用服务所需要的流水线,以及流水线的各个阶段

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

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


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

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

安装
流水线插件已经发布到应用市场,可通过开源应用商店一键安装。目前该插件使用需要满足以下前提条件:
- Rainbond v5.12.0 版本
- 有可用的 Gitlab 和 Gitlab Runner
Gitlab 和 Gitlab runner 也可通过开源应用商店一键安装。安装流程如下:
- 在
平台管理-应用市场-开源应用商店中搜索Gitlab、Gitlab runner一键安装并进行配置; - 在
平台管理-应用市场-开源应用商店中搜索Pipeline一键安装;
具体配置和使用参考:Pipeline 使用文档
使用
在插件全部运行起来以后,回到团队视图进行刷新,可以看到左侧边栏有 Rainbond 流水线 选项,点击即可进入。流水线插件主要使用流程如下图所示,主要分为四步:创建流水线模版->创建应用服务->构建->部署到平台。

创建流水线模版
用户可以在模版中定义流水线的各个阶段,默认提供了NodeJS、Java、Go、Python的流水线模版,可以在内部自定义流水线的各个阶段。
创建应用服务
在有了流水线模版之后,我们需要去创建一个应用服务。应用服务实际上是将代码仓库和流水线模版关联起来,最终实现该代码仓库的代码通过该流水线模版进行构建。
构建代码
在代码管理->