Google Cloud と Kubernetes YAML ファイルの操作

Cloud Code は、Google Cloud と Kubernetes 関連の構成ファイル(スキーマベースの検証、診断、クイック ドキュメントなど)の編集に役立つように設計されています。

サポートされる YAML 構成ファイル

さらに、Cloud Code は、すぐに使える Kubeflow などの人気のある Kubernetes CRD もサポートしています。

カスタム スキーマの使用

また、Cloud Code では、IntelliJ の設定([File] > [Settings] > [Cloud Code] > [Kubernetes]、または Mac OS X の場合は [IntelliJ IDEA]) > [Preferences] > [Cloud Code] > [Kubernetes] を順に選択して [CRD Schema Locations] セクションに移動)で独自の CRD スキーマを指定できます。

ローカル ファイルまたは URL のどちらかを指定できます。github.com を指す URL は自動的に raw.githubusercontent.com に変換されます。

クラスタからのスキーマの pull

Kubernetes Explorer で Kubernetes v1.16 以降が実行されているクラスタに切り替えると、Cloud Code によってインストールされているすべての CRD のスキーマが自動的に pull されます。

Skaffold の追加のサポート

Skaffold は Cloud Code の機能を強化する基盤となるエンジンで、アプリケーションのビルド、push、デプロイと、CI/CD パイプラインの作成に役立ちます。

Cloud Code には、Skaffold 構成ファイルを管理するための追加サポートが含まれています。プロジェクトを開くと、Cloud Code で最新でない Skaffold スキーマが検出され、既存の Skaffold YAML 構成ファイルに対して Skaffold スキーマ バージョンのアップグレードが利用可能になると、イベントログを介してプロンプトが表示されます。

既存の Skaffold YAML ファイルが最新バージョンではないため、イベントログ内の通知で Skaffold スキーマ バージョンのアップグレードを求めるメッセージが表示されます。

または、[Tools] > [Cloud Code] > [Kubernetes] に移動して、[Check for Skaffold Schemas Upgrades] を選択し、利用可能なスキーマのアップグレードを確認できます。

スニペットを使って構成する

一般的な YAML スキーマにすぐに使えるスニペット(Ctrl+Space でオプションを表示)が用意されています。このスニペットを使用すると、新しい YAML ファイルを簡単に構成でき、ベスト プラクティスに準拠しながら既存のファイルに追加することもできます。繰り返しフィールドの操作も簡単です。1 つのフィールドに入力すると、Cloud Code が残りのインスタンスに値を挿入します。

繰り返しフィールドでスニペットを使用する

現在、次のスニペットが提供されています。

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

コンテキストを使用して補完する

Cloud Code は、現在のスキーマに基づいてコンテキスト補完を行います。これにより、正しいオプションを簡単に選択できます。

Kubernetes スキーマのコンテキスト補完

YAML スキーマの検証

Cloud Code は、YAML ファイル内の無効なタグと値を報告し、可能な場合には修正を提案することで、スキーマの検証をサポートします。

名前フィールドの値に赤い下線が付され、無効な値「1234」がハイライト表示されています。テキストにカーソルを合わせると「データの型が正しくありません。文字列が想定されます」と表示されます。

Skaffold YAML ファイルの検証

Cloud Code では、Skaffold 構成ファイルの編集のサポートが追加されています。また、スマート テンプレートを使用することで、skaffold.yaml ファイルを簡単に検証できます。Cloud Code での既存のアプリの使用に関するガイドをご覧ください。

Skaffold YAML テンプレート

コンテキストを使用して Skaffold 構成ファイルを補完する

Cloud Code は、現在のスキーマに基づいてコンテキスト補完を行い、関連するドキュメントを表示します。これにより、正しいオプションを簡単に選択できます。

Skaffold の補完

クイック ドキュメントで定義を確認する

Cloud Code では、構成ファイル内の行をハイライト表示し、[View] > [Quick Documentation] を選択すると、リソースに関連するドキュメントが表示されます。

クイック ドキュメント

構造と有効性の問題に関する YAML の lint チェック

Cloud Code は、一般的なスキーマの問題に関する lint チェックをサポートし、わかりやすいエラーを表示します。

YAML ファイルの lint チェック

サポートの利用

フィードバックを送信するには、GitHub で問題を報告します。または、Stack Overflow で質問します。