美文网首页
项目持续集成

项目持续集成

作者: wwq2020 | 来源:发表于2022-04-21 11:15 被阅读0次

背景

当前的ci/cd更多是应用级的,也就是应用提交了代码,自动做比如扫描,测试,构建和发布,这个往往在toc的场景比较适用
但是tob场景,特别是涉及到私有化部署时候,我们需要的是项目级的ci/cd,因为你需要交付给客户的是一整个项目,而不是一个子应用
下面是我针对最近做tob私有化部署时想到的解决方案,仅供参考
主要思想就是区分应用制品和项目制品以及分别制定他们的流水线
简单总结就是

项目制品=相关应用制品集合

交付方式就是

项目制品+环境配置

解决方式

主干开发方式+gitops
新建一个仓库,比如叫xxx-devops,包含如下内容

一键部署/更新k8s脚本
用于部署项目关联应用的helm chart
环境配置
一键部署更新项目脚本

通过一键部署k8s脚本部署k8s集群,dev,test

dev阶段
应用代码提交后通过gitops去进行构建镜像,自动修改xxx-devops仓库的dev目录下应用helm chart中的image tag,
xxx-devops仓库的dev目录下应用helm chart中的image tag变更后通过gitops去进行部署dev

test阶段
得到足够的验证后,修改xxx-devops仓库test目录下helm chart中的image tag变更后通过gitops去进行部署test

发布阶段
得到足够的验证后,修改xxx-devops仓库release目录下helm chart中的image tag变更后触发ci得到一个交付文件,自动上传到oss
从oss下载相应的交付文件,此时k8s部署脚本和helm chart都是明确的,只需要修改环境配置,然后通过一键启动脚本部署项目

相关文章

网友评论

      本文标题:项目持续集成

      本文链接:https://www.haomeiwen.com/subject/zddiertx.html