Menggunakan file YAML Google Cloud dan Kubernetes di Cloud Code for IntelliJ

Cloud Code dirancang untuk membantu pengeditan Google Cloud dan file konfigurasi terkait Kubernetes, termasuk validasi berbasis skema, diagnostik, dan dokumentasi cepat.

File konfigurasi YAML yang didukung

Selain itu, Cloud Code juga mendukung CRD Kubernetes populer, seperti Kubeflow, yang siap digunakan.

Menggunakan skema kustom

Selain itu, dengan Cloud Code, Anda dapat memberikan skema CRD Anda sendiri dengan setelan IntelliJ (File > Settings > Tools > Cloud Code > Kubernetes atau untuk Mac OS X, IntelliJ IDEA > Preferences > Tools > Cloud Code > Kubernetes dan buka bagian CRD Schema Locations).

Anda dapat mengarahkan ke file lokal atau URL. URL yang mengarah ke github.com 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 Kubernetes Explorer, Cloud Code secara otomatis mengambil skema dari semua CRD yang terinstal.

Dukungan Skaffold tambahan

Skaffold adalah mesin dasar yang mendukung Cloud Code, yang membantu Anda membangun, mendorong, dan men-deploy aplikasi, serta memberikan dukungan untuk membuat pipeline CI/CD.

Cloud Code dilengkapi dengan dukungan tambahan untuk mengelola file konfigurasi Skaffold. Saat membuka project, Cloud Code mendeteksi skema Skaffold yang belum diperbarui dan meminta Anda (melalui Log Peristiwa) saat upgrade versi skema Skaffold tersedia untuk file konfigurasi YaML Skaffold yang sudah ada.

Notifikasi di log Peristiwa yang meminta pengguna untuk mengupgrade versi skema Skaffold karena file YAML Skaffold yang ada bukan versi terbaru

Atau, Anda dapat membuka Tools > Cloud Code > Kubernetes lalu pilih Check for Skaffold Schemas Upgrades untuk memeriksa upgrade skema yang tersedia.

Mengonfigurasi dengan cuplikan

Cuplikan siap pakai untuk skema YAML umum (menggunakan Ctrl+Space untuk melihat opsi) memudahkan Anda untuk memulai file YAML baru atau menambahkan file yang sudah ada tanpa error, dengan tetap mengikuti praktik terbaik. Selain itu, penggunaan kolom berulang menjadi lebih mudah; cukup isi salah satunya dan Cloud Code akan mengisi instance yang tersisa.

Menggunakan cuplikan dengan kolom berulang

Saat ini, cuplikan berikut ditawarkan:

  • 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 - Service
  • Migrate to Containers - Export
  • Migrate to Containers - PersistentVolumeClaim
  • Migrate to Containers - StatefulSet
  • Skaffold - Bazel
  • Skaffold - Getting-started
  • Skaffold - Helm deployment
  • Skaffold - Kaniko

Melengkapi dengan konteks

Berdasarkan skema saat ini, Cloud Code akan memberikan penyelesaian kontekstual 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 dan menyarankan perbaikan jika memungkinkan.

Nilai bidang nama bergaris bawah merah untuk menyorot nilai 1234 yang tidak valid; teks mengambang menyatakan: Jenis salah. String yang diharapkan.

Memvalidasi file YAML Skaffold

Cloud Code memberikan dukungan pengeditan file konfigurasi Skaffold tambahan dan template cerdas yang memungkinkan Anda memvalidasi file skaffold.yaml dengan mudah. Lihat panduan tentang cara menggunakan aplikasi yang sudah ada dengan Cloud Code.

Template yaml Skaffold

Menyelesaikan file konfigurasi Skaffold dengan konteks

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

Penyelesaian Skaffold

Menemukan definisi menggunakan dokumentasi singkat

Cloud Code menampilkan dokumentasi yang relevan untuk suatu resource saat Anda menandai baris dalam file konfigurasi dan mengakses Lihat > Dokumentasi Cepat.

Dokumentasi cepat

Menjalankan analisis data lint untuk masalah struktural dan validitas

Cloud Code menyediakan dukungan analisis lint untuk masalah skema umum dan memberikan error deskriptif.

Menjalankan analisis pada file YAML

Menerapkan {i>file<i} YAML

Untuk menjalankan kubectl apply -f guna menerapkan perubahan konfigurasi menggunakan file saat ini, Anda dapat menggunakan ikon tindakan kubectl ikon tindakan kubectl, yang tersedia di gutter IDE Anda dan memilih Apply. Tindakan ini akan menampilkan tampilan perbedaan yang dapat Anda tinjau perubahannya sebelum mengklik Apply.

Opsi Terapkan ditandai dalam daftar tindakan kubectl

Membedakan file YAML

Jika ingin melihat perbedaan antara file YAML dalam kontrol sumber dan file YAML yang di-deploy, Anda dapat menggunakan ikon tindakan kubectl ikon tindakan kubectl yang tersedia di gutter editor Anda. Pilih opsi Diff untuk menampilkan tampilan perbedaan agar Anda dapat membandingkan dan membedakan dua file skema.

Opsi Diff ditandai dalam daftar tindakan kubectl

Melakukan uji coba file YAML

Untuk melakukan uji coba file dan memeriksa validitasnya, Anda dapat menggunakan ikon tindakan kubectl ikon tindakan kubectl, yang tersedia di gutter IDE Anda, untuk memilih Dry-run on Server atau Dry-run on Client. Tindakan ini akan menjalankan kubectl apply -f dry-run=server (atau kubectl apply -f dry-run=client, untuk opsi Klien) dan memberi tahu Anda jika file berhasil dibuat di jendela Terminal.

Opsi Dry-run on Server ditandai dalam daftar tindakan kubectl

Langkah selanjutnya

Dapatkan dukungan

Untuk mengirimkan masukan atau melaporkan masalah di IntelliJ IDE, buka Alat > Cloud Code > Bantuan / Tentang > Kirim masukan atau laporkan masalah untuk melaporkan masalah di GitHub, atau ajukan pertanyaan di Stack Overflow.