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 即会填充其余的实例。
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 文件
如需使用当前文件应用配置更改,请打开 Command Palette(按 Ctrl
/Cmd
+Shift
+P
或点击 View > Command Palette),然后运行 Cloud Code: Apply Current JSON/YAML File to K8s Deployed Resource。
此命令将显示一个比较差异视图,供您查看更改。当系统提示您是否要应用此更改时,请点击应用。这将运行 kubectl apply -f
。
查看 YAML 文件之间的差异
如需查看源代码控制系统中的 YAML 文件与已部署的 YAML 文件之间的差异,请打开 Command Palette(按 Ctrl
/Cmd
+Shift
+P
或点击 View > Command Palette),然后运行 Cloud Code: Diff Current JSON/YAML File with K8s Deployed Resource。
对 YAML 文件执行试运行
当您在 YAML 文件中输入信息时,Cloud Code 会自动执行试运行,并用黄色波浪线突出显示所有错误。
如果服务器根据模拟运行结果认为您的代码有部分存在错误,则会显示黄色波浪线。这可能包括违反政策、重复的名称,或 Cloud Code 未在客户端执行的验证(例如最大端口号)。
如需查看 YAML 文件中错误的说明,请将光标悬停在带黄色下划线的代码上。
在 Cloud Code 与 Kubernetes 服务器进行检查之前,系统会针对检测到的错误显示红色波浪线。例如,在应输入字符串的位置输入数字会触发红色波浪线。
使用 Secret
使用配置映射和 Secret 是使用 Kubernetes 的关键环节。如需使用 Cloud Code 查看 base64 Secret 的上下文,请将光标悬停在相应 Secret 上方以将其解码。
后续步骤
- 创建 Cloud Code Kubernetes 运行配置
skaffold.yaml
文件。 - 手动为您的应用创建 Skaffold 配置。
- 查看
Skaffold.yaml
参考文档。