次のリソースでヘルムチャートを作成しようとしています。
これらは、デプロイしたい順序でもあります。 Deploymentにフックを配置して、インストール後になるようにしましたが、Helmはそれをリソースとして認識せず、手動で管理する必要があります。
ジョブにはSecretとConfigMapの情報が必要です。それ以外の場合は、プリインストールフックにします。しかし、すべてをフックにすることはできません。そうしないと、リリースで何も管理されません。
Helmリリース内のすべてのリソースを管理し、展開が開始される前にジョブが終了することを確認できるソリューションまたはアイデアはありますか?
私が今考えているのは、2つのチャートを2つ作成することだけです。1つ目は1〜4で、2つ目は5つです。
Helmは、指定されたChartとその依存関係のすべてのリソースを収集し、リソースタイプごとにグループ化し、次の順序でインストールします( here -Helm 2.10を参照)。
リリースのアンインストール中、順序は逆になります( here を参照)。
このロジックに従って、ジョブリソースが作成された場合、シークレットとConfigMapの両方が既に適用されますが、Helmはジョブの完了を待ってから展開を適用しません。チャートを2つの部分(1〜4、5)に分割して順番にインストールすると、ジョブが完了する前に展開が適用される可能性があります。私が提案するのは、チャートを2つの部分(1-3、4-5)に分割することです。この部分では、ジョブにプレインストールフックがあり、展開が適用される前に確実に完了します。