平台团队为将 CI/CD 和 VCS 流水线集成到其平台而制定的工作流程和清单。
译自 The 6 Pillars of Platform Engineering: Part 2 — CI/CD & VCS Pipeline 。
本指南概述了平台工程中开发者体验的六大主要技术领域的工作流程和步骤。该指南分为六个部分发布,第一部分介绍了该系列并关注了安全性。第二部分将介绍应用程序部署管道。指南的其他部分如下所列,您也可以下载完整的 PDF 版本以获取完整的指导、大纲和清单。
平台团队旅程的首要步骤之一是集成并可能重构软件交付流水线。这意味着详细查看组织的版本控制系统(VCS)和持续集成/持续交付(CI/CD)流水线。
许多组织在不同成熟阶段拥有多个 VCS 和 CI/CD 解决方案。这些平台也会随时间发展,因此建议采用基于组件的 API 平台或目录模型来支持未来的可扩展性,而不会损害功能或要求定期重构。
在云原生模型中,基础设施和配置以代码的形式进行管理,因此 VCS 对此核心功能是必需的。使用 VCS 和管理代码提供以下好处:
VCS 和 CI/CD 使跨多个基础设施系统和平台的交互和工作流成为可能,这需要仔细评估下面列出的所有 VCS 和 CI/CD 要求。
典型的 VCS 和 CI/CD 工作流程应遵循以下五个步骤:
VCS 和 CI/CD 流水线流程
成功的 VCS 和 CI/CD 解决方案应提供:
注意:VCS 和 CI/CD 系统可能有这里未列出的更具体的要求。
随着平台团队选择和发展他们的 VCS 和 CI/CD 解决方案,他们需要考虑这种转变对现有/遗留供应实践、安全性和合规性的影响。团队应该假设构建新平台将影响现有惯例,并且他们应该努力识别、协作和协调业务中的变化。
平台团队也应具有前瞻性。VCS 和 CI/CD 平台正在迅速发展,以进一步从开发人员那里抽象出 CI/CD 过程的复杂性。HashiCorp 旨在通过为开发人员提供一致的方式来部署、管理和观察跨多个运行时(包括 Kubernetes 和无服务器环境)的应用程序,使用 HashiCorp Waypoint 来简化这些工作流程。