Cloud Shell 专用 Cloud Code 旨在通过针对结构和有效值对架构执行 lint 请求并提供描述性错误来简化 Kubernetes 和 Cloud Build 配置。Cloud Code 提供针对常用架构的开箱即用解决方案、智能补全功能和通过悬停鼠标查看文档的功能。
支持的 YAML 配置文件
Cloud Code 还支持热门的 Kubernetes 自定义资源 定义 (CRD),例如 Kubeflow,开箱即用。
使用自定义架构
借助 Cloud Code,您可以提供自己的 CRD 架构和
cloudcode.yaml.crdSchemaLocations
设置
settings.json
文件。
您可以指向本地文件或网址。指向 github.com
的网址是
已自动转换为 raw.githubusercontent.com
。
从集群中拉取架构
切换到运行 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 文件中的无效标记和值并尽可能给出修正建议,来提供架构验证支持。
通过悬停鼠标浏览文档
当您持有 指向架构中的值的指针。
访问资源定义
要查看某项资源的定义,请右键点击该资源,然后选择 前往“定义”或 Peek 定义。
应用 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 文件之间的区别
YAML 文件,打开命令面板(按 Ctrl
/Cmd
+Shift
+P
或点击
查看 >Command Palette)然后运行
Cloud Code:比较当前 JSON/YAML 文件与 K8s 部署的资源。
对 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
参考文档。