Cloud Code for VS Code 的設計宗旨是簡化 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 檔案或新增至現有檔案,同時避免錯誤並遵循最佳做法。填寫第一個欄位後,Cloud Code 會填寫其餘例項,讓您更輕鬆地處理重複欄位。
Cloud Code 提供下列程式碼片段:
Anthos Config Management - ClusterAnthos Config Management - Cluster SelectorAnthos Config Management - Config ManagementAnthos Config Management - Namespace SelectorCloud Build - Cloud Run deploymentCloud Build - Docker container buildCloud Build - GKE deploymentCloud Build - GKE Skaffold deploymentCloud Build - Go buildCloud Build - Terraform plan + applyConfig Connector - BigQueryDatasetConfig Connector - BigQueryTableConfig Connector - BigtableClusterConfig Connector - BigtableInstanceConfig Connector - PubSubSubscriptionConfig Connector - PubSubTopicConfig Connector - RedisInstanceConfig Connector - SpannerInstanceKubernetes - ConfigMapKubernetes - DeploymentKubernetes - IngressKubernetes - PodKubernetes - SecretKubernetes - ServiceMigrate to Containers - ExportMigrate to Containers - PersistentVolumeClaimMigrate to Containers - StatefulSetSkaffold - BazelSkaffold - Getting-startedSkaffold - Helm deploymentSkaffold - Kaniko
提供背景資訊
Cloud Code 會根據目前的結構定義提供脈絡補全功能和相關文件,協助您選擇合適的選項。

驗證 YAML 結構定義
Cloud Code 提供結構定義驗證支援,可標記 YAML 檔案中的無效標記和值,並盡可能建議修正方式。

懸停時探索說明文件
將指標懸停在結構定義中的值上時,Cloud Code 會顯示相關說明文件。

存取資源定義
如要查看資源的定義,請在資源上按一下滑鼠右鍵,然後選擇「Go to Definition」或「Peek Definition」。
套用 YAML 檔案
如要使用目前檔案套用設定變更,請開啟指令區塊面板 (按下 Ctrl/Cmd+Shift+P 鍵,或依序點選「View」(瀏覽) >「Command Palette」(指令面板)),然後執行「Cloud Code: Apply Current JSON/YAML File to K8s Deployed Resource」(Cloud Code:將目前的 JSON/YAML 檔案套用至 K8s 已部署的資源)。
這個指令會顯示差異檢視畫面,供您查看變更。系統提示是否要套用這項變更時,請按一下「套用」。這會執行 kubectl apply -f。
查看 YAML 檔案之間的差異
如要查看來源控管中的 YAML 檔案與已部署 YAML 檔案之間的差異,請開啟指令面板 (按下 Ctrl/Cmd+Shift+P 鍵,或依序點選「View」(瀏覽) >「Command Palette」(指令面板)),然後執行「Cloud Code: Diff Current JSON/YAML File with K8s Deployed Resource」(Cloud Code:比較目前的 JSON/YAML 檔案與 K8s 已部署資源)。
模擬執行 YAML 檔案
當您在 YAML 檔案中輸入資訊時,Cloud Code 會自動執行模擬測試,並以黃色波浪線標記任何錯誤。
如果伺服器根據模擬測試結果,認為程式碼的某個部分有錯誤,就會顯示黃色波浪線。這可能包括違反政策、名稱重複,或 Cloud Code 未在用戶端執行的驗證 (例如最大連接埠號碼)。
如要查看 YAML 檔案中的錯誤說明,請將指標懸停在以黃色底線標示的程式碼上。

在 Cloud Code 檢查 Kubernetes 伺服器之前,系統會以紅色波浪線標示偵測到的錯誤。舉例來說,在需要指定字串的地方指定數字,就會觸發紅色波浪線。
使用密鑰
使用設定對應和密鑰是使用 Kubernetes 的重要環節。如要使用 Cloud Code 查看 base64 密鑰的內容,請將指標懸停在密鑰上,即可解碼。

後續步驟
- 建立 Cloud Code Kubernetes 執行設定
skaffold.yaml檔案。 - 為應用程式手動建立 Skaffold 設定。
- 查看
Skaffold.yaml參考文件。