Cloud Code for VS Code 旨在对结构和有效值的架构执行 lint 请求并提供描述性错误,使 Kubernetes 和 Cloud Build 的配置更简单。Cloud Code 提供针对常用架构的开箱即用解决方案、智能补全功能和通过悬停鼠标查看文档的功能。
支持的 YAML 配置文件
Cloud Code 还支持常见的 Kubernetes 自定义资源定义 (CRD),例如 Kubeflow)。
使用自定义架构
借助 Cloud Code,您可以通过 settings.json
文件中的 cloudcode.yaml.crdSchemaLocations
设置提供自己的 CRD 架构。您可以指向本地文件或网址。指向 github.com
的网址会自动转换为 raw.githubusercontent.com
。
从集群中拉取架构
当您在 Kubernetes 视图中切换到运行 Kubernetes v1.16 及更高版本的集群时,Cloud Code 会自动拉取所有已安装的 CRD 的架构。
使用代码段进行配置
借助针对常用 YAML 架构的开箱即用代码段(使用 Command/Ctrl+Space
即可查看选项),您可以轻松启动新的 YAML 文件或向现有的 YAML 文件添加内容而不会产生错误,同时仍然遵循最佳做法。Cloud Code 会在填写第一个字段后填写剩余的实例,从而让您更轻松地处理重复字段。
Cloud Code 提供以下代码段:
Anthos Config Management - Cluster
Anthos Config Management - Cluster Selector
Anthos Config Management - Config Management
Anthos Config Management - Namespace Selector
Cloud Build - Cloud Run deployment
Cloud Build - Docker container build
Cloud Build - GKE deployment
Cloud Build - GKE Skaffold deployment
Cloud Build - Go build
Cloud Build - Terraform plan + apply
Config Connector - BigQueryDataset
Config Connector - BigQueryTable
Config Connector - BigtableCluster
Config Connector - BigtableInstance
Config Connector - PubSubSubscription
Config Connector - PubSubTopic
Config Connector - RedisInstance
Config Connector - SpannerInstance
Kubernetes - ConfigMap
Kubernetes - Deployment
Kubernetes - Ingress
Kubernetes - Pod
Kubernetes - Secret
Kubernetes - Service
Migrate to Containers - Export
Migrate to Containers - PersistentVolumeClaim
Migrate to Containers - StatefulSet
Skaffold - Bazel
Skaffold - Getting-started
Skaffold - Helm deployment
Skaffold - Kaniko
根据上下文补全
Cloud Code 会根据当前架构提供上下文补全信息和相关文档,以帮助您选择合适的选项。
验证 YAML 架构
Cloud Code 通过标记 YAML 文件中的无效标记和值并尽可能给出修正建议,来提供架构验证支持。
悬停鼠标时浏览文档
当您将指针悬停在架构中的值上时,Cloud Code 会显示相关文档。
访问资源定义
如需查看资源的定义,请右键点击该资源,然后选择 Go to Definition 或 Peek Definition。
应用 YAML 文件
如需使用当前文件应用配置更改,请打开命令面板(按 Ctrl
/Cmd
+Shift
+P
或点击视图 > 命令面板),然后运行 Cloud Code: Apply Current JSON/YAML File to K8s Deployed Resource。
此命令将显示一个比较差异视图,供您查看更改。当系统提示您是否要应用此更改时,请点击应用。这将运行 kubectl apply -f
。
查看 YAML 文件之间的差异
如需查看源代码控制中的 YAML 文件与已部署的 YAML 文件之间的区别,请打开命令面板(按 Ctrl
/Cmd
+Shift
+P
或点击视图 > 命令面板),然后运行 Cloud Code: Diff Current JSON/YAML File with K8s Deployed Resource。
对 YAML 文件执行试运行
当您在 YAML 文件中输入信息时,Cloud Code 会自动执行试运行,并为所有错误添加黄色波浪线下划线。
如果服务器根据试运行结果将代码的一部分视为错误,则会出现黄色的波浪线。这可能包括违反政策、名称重复或 Cloud Code 未在客户端执行的验证(例如最大端口号)。
如需查看 YAML 文件中的错误说明,请将指针悬停在带有黄色下划线的代码上方。
在 Cloud Code 与 Kubernetes 服务器进行检查之前,表示检测到的错误会显示红色波浪线。例如,在应该输入字符串的位置输入数字会触发一条红色的波浪线。
使用 Secret
使用配置映射和secrets是使用 Kubernetes 的关键部分。如需使用 Cloud Code 查看 base64 Secret 的上下文,请将指针悬停在该 Secret 上以进行解码。
后续步骤
- 创建一个 Cloud Code Kubernetes 运行配置
skaffold.yaml
文件。 - 为您的应用手动创建 Skaffold 配置。
- 查看
Skaffold.yaml
参考文档。