打造 PetBattle 的 CI/CD 流程
1. Argo CD 与开发体验
在团队相互共享服务时,能够带来出色的开发体验。后端团队将新应用推送到仓库后,下游团队只需一键操作,就能将其部署到开发环境。若添加 Helm 值模式文件,OpenShift 会构建所见即所得(WYSIWYG)表单,便于对值文件进行配置。
1.1 Argo CD 基础搭建
在项目起步阶段,我们借助 Helm 和 Argo CD 来启动所有的构建、部署和工具配置工作。在执行自动化启动操作时,我们做出了一些有倾向性的选择,下面详细探讨其中的权衡考量。
对于开发团队而言,启动所有 CI/CD 工具是一项极其重要的任务。由于开发用的 OpenShift 集群每两周需重新搭建一次,所以我们要确保 CI 和 CD 能够快速且反复地搭建起来。通过采用“一切皆代码”的实践方式,我们将所有 OpenShift 基础设施定义、CI/CD 工具以及管道定义都存储在 Git 中。Argo CD 会持续将声明的 CI/CD 工具状态同步到开发集群,例如更新 SonarQube Helm 图表版本,只需修改一行代码并推送到 Git,一分钟后更改就会同步并部署到集群。
有效地对构建应用所涉及的所有支持工具进行生命周期管理,需要付出努力并注重细节,但从长远来看是值得的,因为这样能构建出一个易于应对变化的系统。我们围绕变更成本对应用生命周期进行了优化,尽可能降低人力成本。毕竟,人力时间是我们最大的资源成本。
1.2 版本控制与 SemVer
我们使用语义化版本控制(SemVer)将所有工具的版本提交到 Git。在版本控制方面,这是一个很好的做法,几乎
超级会员免费看
订阅专栏 解锁全文
37

被折叠的 条评论
为什么被折叠?



