CICD与流水线

2018-06-01  本文已影响0人  Ethan遗忘

功能完善、执行稳定的流水线是持续集成与持续交付成功的关键,它覆盖了从代码提交到上线的各个阶段,帮助团队快速验证新提交的代码是否满足项目质量要求、是否不影响原有系统功能,是否能将交付件可靠地自动化地部署到生产环境。

那么CICD流水线视图中有哪些要素呢?

门禁
代码提交后,自动触发门禁,执行代码静态检查,LLT测试。代码质量要求由项目组统一制订规范,门禁检查项围绕项目质量要求配置相关任务。

review
开发者提交代码,并门禁执行通过后,项目或模块Master对开发者提交的代码进行review,提供检视意见。

代码入库
Master检视通过后,触发代码合入项目仓库

出包与软件仓库
每日定时构建,执行出包门禁任务、打包任务,构建成功的部件打上一个唯一的版本号,并上传到软件仓库。构建目标的归档涉及软件版本和软件仓库的管理。

单服务部署、单服务测试
出包成功后,从软件仓库获取服务最新的构建成功的版本,在单服务验证环境中完成单服务部署、单服务测试,单服务对周边的依赖靠mock模拟。

服务集成部署、集成测试
单服务测试通过后,推送到集成测试环境完成部署,并执行集成测试用例。

类生产环境部署、测试
集成测试通过后,推送到与实际生产环境接近的类生产环境完成部署,并执行全量门槛测试用例。在类生产环境,可以通过API拨测、UI拨测系统定时对环境执行拨测用例,监控环境的可用率。

版本发布评审
将版本发布的流程梳理、简化、集成到自动化的流水线,加速版本评审、发布上线的流程。版本发布流程包含:版本归档、执行安全扫描、推送到生产环境。

生产环境部署
通过前面一系列的关卡后,发布件的质量,变更升级的流程都是经过验证、有保障的。流水线通过相应的部署工具,在生产环境完成(微)服务的稳定变更升级。

上一篇下一篇

猜你喜欢

热点阅读