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

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

ガターアイコンを使って、ラベル定義とラベルセレクターの間や、オーバーライドされた値とオーバーライドする値の間を移動することもできます。
新しい Helm チャートを作成する
プロジェクト ツールウィンドウで、フォルダーを右クリックして を選択します。
開いた 新規Helm チャート ウィンドウで、チャートの名前を入力します。
これにより、 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 チャートがレンダリングされます。
JetBrains Rider はレンダリング済みプレビューを差分ビューア内に開き、元のテンプレートファイルと比較します。
外部依存関係を更新する
チャートを右クリックし、コンテキストメニューから を選択します。
これにより、 helm 依存関係更新(英語)コマンドが実行されます。
Helm 2 では、 requirements.yaml ファイルで依存関係を指定する必要があります。 このアクションは、 requirements.lock を生成または更新します。
Helm 3 では、 Chart.yaml ファイルで依存関係を指定する必要があります。 依存関係を誤ったファイルに指定した場合、JetBrains Rider はそれらを移動するためのクイックフィックスつきインスペクションを提供します。
requirements.yaml ファイルと Chart.yaml ファイルの両方で依存関係を更新するためのガターアイコンもあります。
考えられる問題についてチャートを調べる
グラフを右クリックし、 Helm(H) をポイントして、 Helm Lint(L) をクリックします。
これにより、 helm lint(英語) コマンドが実行され、一連のテストが実行されて、チャートを実際にインストールせずに、考えられる問題を発見します。