Menggunakan YAML Google Cloud dan Kubernetes di Cloud Code untuk Cloud Shell

Cloud Code untuk Cloud Shell dirancang untuk mempermudah konfigurasi Kubernetes dan Cloud Build dengan melakukan linting skema untuk struktur dan nilai yang valid serta memberikan error deskriptif. Cloud Code dilengkapi dengan solusi langsung pakai untuk skema umum, penyelesaian cerdas, dan dokumentasi yang diarahkan kursor.

File konfigurasi YAML yang didukung

Cloud Code juga mendukung definisi resource kustom Kubernetes (CRD) populer, seperti Kubeflow, secara langsung.

Menggunakan skema kustom

Dengan Cloud Code, Anda dapat memberikan skema CRD Anda sendiri dengan setelan cloudcode.yaml.crdSchemaLocations dalam file settings.json. Anda dapat mengarahkan ke file lokal atau URL. URL yang mengarah ke github.com akan otomatis dikonversi menjadi raw.githubusercontent.com.

Menarik skema dari cluster

Saat Anda beralih ke cluster yang menjalankan Kubernetes v1.16 dan yang lebih baru di tampilan Kubernetes, Cloud Code akan otomatis mengambil skema semua CRD yang diinstal.

Mengonfigurasi dengan cuplikan

Cuplikan siap pakai untuk skema YAML umum (menggunakan Command/Ctrl+Space untuk melihat opsi) memudahkan Anda memulai file YAML baru atau menambahkan ke file yang ada tanpa error, sambil tetap mengikuti praktik terbaik. Cloud Code memudahkan Anda menggunakan kolom berulang dengan mengisi instance yang tersisa setelah Anda mengisi kolom pertama.

Cloud Code menawarkan cuplikan berikut:

  • 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

Menyelesaikan dengan konteks

Berdasarkan skema saat ini, Cloud Code menyediakan penyelesaian kontekstual dan dokumen yang relevan untuk membantu Anda memilih opsi yang tepat.

Penyelesaian konteks untuk skema Kubernetes

Memvalidasi skema YAML

Cloud Code menawarkan dukungan validasi skema dengan menandai tag dan nilai yang tidak valid dalam file YAML Anda serta menyarankan perbaikan jika memungkinkan.

Nilai kolom nama digarisbawahi dengan warna merah untuk menandai nilai 1234 yang tidak valid; teks pengarahan kursor menyatakan: Jenis salah. String yang diharapkan.

Menemukan dokumentasi saat mengarahkan kursor

Cloud Code menampilkan dokumentasi yang relevan saat Anda mengarahkan kursor ke nilai dalam skema.

Info dokumentasi saat Anda mengarahkan kursor ke nilai dalam skema

Mengakses definisi resource

Untuk melihat definisi resource, klik kanan resource, lalu pilih Go to Definition atau Peek Definition.

Menerapkan file YAML

Untuk menerapkan perubahan konfigurasi menggunakan file saat ini, buka palet perintah (tekan Ctrl/Cmd+Shift+P atau klik View > Command Palette), lalu jalankan Cloud Code: Apply Current JSON/YAML File to K8s Deployed Resource.

Perintah ini akan menampilkan tampilan perbedaan untuk Anda meninjau perubahan. Klik Terapkan saat diminta apakah akan menerapkan perubahan ini. Tindakan ini akan menjalankan kubectl apply -f.

Melihat perbedaan antara file YAML

Untuk melihat perbedaan antara file YAML dalam kontrol sumber dan file YAML yang di-deploy, buka palet perintah (tekan Ctrl/Cmd+Shift+P atau klik View > Command Palette), lalu jalankan Cloud Code: Diff Current JSON/YAML File with K8s Deployed Resource.

Melakukan uji coba file YAML

Cloud Code melakukan uji coba otomatis saat Anda mengetik informasi di file YAML dan menggarisbawahi error apa pun dengan garis bergelombang berwarna kuning.

Garis berkelok-kelok berwarna kuning muncul saat server menganggap bagian kode Anda sebagai error berdasarkan hasil uji coba. Hal ini dapat mencakup pelanggaran kebijakan, nama duplikat, atau validasi yang tidak dilakukan Cloud Code di sisi klien (seperti nomor port maksimum).

Untuk melihat deskripsi error dalam file YAML, arahkan kursor ke kode dengan garis bawah berwarna kuning.

Validasi dry run sisi server gagal di `hello.deployment.yaml` dengan pesan error yang ditampilkan sebagai toast. Detail error ditemukan di saluran Output; namespace 'random-namespace' tidak ada

Garis bergelombang merah muncul untuk error yang terdeteksi sebelum Cloud Code memeriksa dengan server Kubernetes. Misalnya, memasukkan angka di tempat string diharapkan akan memicu garis bergelombang merah.

Menangani secret

Menggunakan peta konfigurasi dan secret adalah bagian penting dalam menggunakan Kubernetes. Untuk melihat konteks secret base64 dengan Cloud Code, arahkan kursor ke secret untuk mendekodenya.

Mendekode secret dengan mengarahkan kursor ke secret

Langkah selanjutnya