Cloud Code for VS Code 使用 `skaffold.yaml` 配置文件为 Kubernetes 应用提供顺畅的开发体验,并自动执行构建和部署 Kubernetes 应用所涉及的许多任务。这样一来,Cloud Code 就可以处理构建、推送和部署应用的工作流,并提供用于创建 CI/CD 流水线的基础组件。
项目通常从使用单个 skaffold.yaml 配置来描述如何构建和部署应用开始。随着项目规模的扩大,将应用流水线拆分为多个单独的部分会非常有用。
Cloud Code 支持定义多个配置依赖项,这些依赖项可以放在同一个 skaffold.yaml 文件中并使用 YAML 文档分隔符 (---) 分隔,也可以放在单独的 skaffold.yaml 文件中以从更高级别的 skaffold.yaml 文件中进行引用。通过使用 .metadata.name 字段为配置命名,可以将配置创建为“模块”。
使用模块可让您独立开发和调试应用的各个部分。可以定义配置文件之间的依赖项和对特定模块的依赖项。 如需了解使用此功能的步骤,请参阅独立开发应用的部分。
使用模块调试应用
您可以以迭代方式开发和调试整个应用或一组已定义的模块。Cloud Code 会管理模块依赖项及其部署顺序。
模块使用入门示例
如需为应用选择模块,请参阅构建选定的模块及其依赖项。
如果您尚未使用过模块,并希望通过示例测试该功能,请参阅模块化为 frontend 和 backend 的留言板示例。
如需查看使用各种技术和语言以及使用模块开发的大型企业应用示例,请参阅 Bank of Anthos 示例。
常见使用场景
本部分概述了一些常见使用场景示例,以演示在 IDE 中使用模块的时间和方式的不同场景。
微服务开发
您是一个前端开发者,主要处理 frontend 模块。作为微服务,frontend 没有对 backend 代码库的明确的代码或库依赖项,但需要部署 backend 和运行集群。
您可以使用包含 frontend 模块定义的项目来从 Cloud Code IDE 部署到共享开发集群(后端团队也在其中部署其服务)并进行调试。DevOps 团队维护此共享集群。
在大多数情况下,您不使用或调试 backend 代码或更新 Kubernetes 配置。Cloud Code 会构建和部署 frontend 所需的其他配置。将 Cloud Code 部署配置设置为仅迭代 frontend 模块。
您还可以将 frontend 和 backend 部署到本地集群,以实现更快的迭代体验。
跨边界微服务开发和调试
需要同时调试多个微服务时,您可以:
- 打开父目录,其中含有模块源代码的所有子目录位于互相相对的位置
- 选择部署的根
skaffold.yaml文件(配置) - 配置 Cloud Code 部署配置,以仅迭代在本地提供的
frontend和backend模块(当它们发生更改时,则为其相应的 Kubernetes 配置模块)。
您还可以将单独的根 skaffold.yaml 文件用于包含静态数据服务器的本地开发。
智能模块 YAML 修改
您是 DevOps 工程师,要为使用模块的微服务开发者团队构建一个模板代码库。您希望确保模块定义中没有错误。您可以使用 Cloud Code IDE 来修改 skaffold.yaml 配置文件。