hello, 经历了许久, 我又回来了, 有人肯定会好奇, 我这段时间密谋什么坏事去了, 还真不出您所料, 下面给大家说一下我所密谋了好久的坏事。
背景
相信看过我之前文章的童靴们. 大概知道, 我所做的工作就是开发一套 公司业务底层的数据集成
平台DIX(Data Integration)
, 下文中统一简称DIX
, 现如今在DevOps
大势所趋之下, 于是我们也决定针对DIX进行一个DevOps的设计实现.
声明: 在本文以及本系列文中, 不会涉及公司内部相关内容,旨在能帮助到和我一样摸着光亮前进的人.
顺便打个广告: 笔者目前就职于Uinnova, 若有商务合作可以直接百度搜索Uinnova
实现方案
简单的寒暄, 我们直接上图, 看一下整体的实现方案
如图所示, 上面的就是我们要实现的全部, 在本文中, 只做一:个简单的介绍, 关于详细的每个步骤的实现, 会有专题来阐述。
流程介绍
- 首先我们在本地编辑好代码合并到
Develop分支
, 并且Push
到git仓库
- 第二步, 依赖
GitLab
(git的管理平台), 来触发我们的Ci操作
(GitLab-Runner) - 第三步, 在
Runner
的时候会依次完成代码编译(Java)、以及Build操作
- 第四步, 当我们
Build
完成之后, 会唤醒Ansible
(自动部署平台)进行Cd
(部署操作) - 第五步, 当我们把
DIX
部署完成之后, 同时还会经Ansible
触发我们的Selenium
进行E2E测试 - 最后, 便是测试完成的版本发布
关于什么是Devop以及cicd在这里大家可以自行百度一下,这里不过多赘述. 整个实现过程就是这样, 感兴趣的童靴可以查看其它专题的详细阐述