Helm(ヘルム)
Helm(英語) は Kubernetes アプリケーションを管理するためのツールです。 Helm チャートは、Kubernetes クラスター内で実行する、事前設定されたリソース定義のパッケージです。 チャートには、パッケージ( Chart.yaml )の説明と、Kubernetes マニフェストファイルを生成するために使用される 1 つ以上のテンプレートが含まれています。
Kubernetes プラグインのインストール
この機能は、インストールして有効にする必要がある Kubernetes(英語) プラグインに依存しています。
Ctrl+Alt+S を押して設定を開き、 を選択します。
マーケットプレース タブを開き、 Kubernetes プラグインを見つけて、 インストール をクリックします (プロンプトが表示されたら、IDE を再起動します)。
Helm へのカスタムパスを指定する
Helm をカスタムディレクトリにインストールする場合は、そのパスを手動で指定できます。
設定 ダイアログ (Ctrl+Alt+S) で、 を選択します。
helm 実行可能ファイルへのパス フィールドに、helm 実行可能ファイルへのパスを指定します。
テスト をクリックしてファイルの場所を確認してください。 見つからない場合は、ファイルの場所を手動で確認するか、 インストール をクリックすると、DataGrip が不足しているソフトウェアをダウンロードしてインストールします。

Helm チャートおよびテンプレートのコーディング支援には、コード補完、リファクタリング、インスペクション、クイックフィックス、クイックドキュメントが含まれます。 コード補完には、指定されたリポジトリ(デフォルトでは Helm Hub(英語) )からの依存関係の値が含まれています。
DataGrip は、 helmfile にもコードインサイトを提供し、 helmfile.yaml 内のプロパティや値に対して補完、ナビゲーション、ハイライト、その他の支援を行います。
Go テンプレートディレクティブでは、DataGrip で Helm built-in objects および values.yaml ファイルやカスタム値ファイルで渡された値の補完が利用できます。 Ctrl+B を押すと、オブジェクト値のソース (親チャートにインポートされた子チャート値など) に移動できます。
テンプレートオブジェクトでは コード折りたたみも使えます: Ctrl+NumPad + + Ctrl+NumPad - で値・ディレクティブを切替。 値にカーソルを合わせると、ディレクティブ内容を展開して確認できます。

ガターアイコンでラベル定義とラベルセレクター間や、上書き値・上書き元値間のナビゲートも可能です。
新しい Helm チャートを作成する
プロジェクト ツールウィンドウで、フォルダーを右クリックして を選択します。
開いた 新しい Helm チャートHelm テンプレートのレンダリングHelm テンプレートのレンダリングHelm テンプレートのレンダリングHelm テンプレートのレンダリングHelm テンプレートのレンダリングRender Helm TemplateRender Helm TemplateRender Helm TemplateRender Helm TemplateRender Helm Template ウィンドウで、チャートの名前を入力します。
これにより、 helm create(英語) コマンドが実行され、開始に必要なすべての基本ファイルが追加されます。
.helmignore : パッケージ構築時に無視するパターン
Chart.yaml : メタデータを含む基本的なチャートの説明
values.yaml : チャートテンプレートのデフォルト値
charts/ : サブチャートのディレクトリ
templates/ : チャート定義のディレクトリ
_helpers.tpl : テンプレートの一部と機能
NOTES.txt : チャートの配備後に印刷される情報
deployment.yaml : 例 Kubernetes デプロイの定義
ingress.yaml : Kubernetes 入力定義の例
service.yaml : Kubernetes のサービス定義の例
Helm テンプレートレンダリング結果のプレビュー
helm テンプレート(英語)コマンドを使用して、チャートテンプレートをローカルでレンダリングできます。 ファイルシステム上の任意のフォルダーの値を含む 1 つ以上の YAML ファイルを指定します。 これにより、環境ごとに異なる値ファイルを使用するといったユースケースにも対応できます。
テンプレートファイルがエディターで開かれている場合は、エディターの右側にある
をクリックします。
または、チャートを右クリックし、コンテキストメニューから を選択します。
Helm テンプレートのレンダリング ダイアログで、レンダリング用の値を含む 1 つまたは複数のファイルを追加します。 ファイルシステム上の任意の YAML ファイルを使用できます。
オプションで、 他の値 セクションで個別のコンマ区切り値を指定できます。

続行 をクリックしてください。 これにより、 helm テンプレート(英語)コマンドが実行され、指定された値で Helm チャートがレンダリングされます。
DataGrip はレンダリング済みプレビューを diff ビューア内に開き、元のテンプレートファイルと比較します。
外部依存関係を更新する
チャートを右クリックし、コンテキストメニューから を選択します。
これにより、 helm 依存関係更新(英語)コマンドが実行されます。
Helm 2 では、 requirements.yaml ファイルで依存関係を指定する必要があります。 このアクションは、 requirements.lock を生成または更新します。
Helm 3 では、 Chart.yaml ファイルで依存関係を指定する必要があります。 依存関係を誤ったファイルへ設定した場合でも、DataGrip のインスペクションで移動クイックフィックスが案内されます。
requirements.yaml ファイルと Chart.yaml ファイルの両方で依存関係を更新するためのガターアイコンもあります。
考えられる問題についてチャートを調べる
グラフを右クリックし、 Helm(ヘルム) をポイントして、 Helm Lint をクリックします。
これにより、 helm lint(英語) コマンドが実行され、一連のテストが実行されて、チャートを実際にインストールせずに、考えられる問題を発見します。