2017-12-04 11 views
0

それぞれのrequirements.yamlファイルで互いに参照するいくつかのヘルムチャートを同じリポジトリに保存したいとします。これらのチャートは、どのようにして互いの相対的な経路を参照するべきですか?地元の発展のために同じリポジトリのヘルムチャートを参照する方法

私はしかし、私はこれを変更する必要がありますホストされているリポジトリに移動したときに

name: chart-name 
repository: file://../chart-name 

のようにfile://プロトコルを使用することができます。私はこのチャートのディレクトリは、最終的な場所をrepository.yamlファイルに焼き付ける必要はないと考えています。これは可能ですか?

答えて

0

ホストされたリポジトリに移動すると、各グラフを公開する必要はありませんか? 循環依存がない場合は、各チャートをホストされているリポジトリに依存する順序で公開し、requirements.yamlを更新します。あなたは3つのチャートAを持っている場合

はすなわち、BとCの

  1. AはBに依存しませんもC
  2. Bは、CがB

に依存

  • に依存しますホストされたレポにAを公開し、Aのホステッドレポ名を指すようにBの要件を更新し、次にBを公開し、Cの更新プロセスを繰り返す。

    私は似たようなことをしていますが、私はホストされたレポを使用しません。私はすでに大きなAnsible設定を持っているので、ディレクトリから直接チャートをインストールする役割を書いています。すべての(現在は7つの)マイ・チャートで1つのgit repoがあり、ヘルム・サーバーを実行しているこのマイナスは同様のプロセスです。明らかな欠点は、要件の手動更新ですが、私はそこに他の選択肢があるのか​​どうかはわかりません。

    EDIT

    Aはハックビットが、仕事ができる:

    一つの方法はまた、ローカルであなたのチャートのレポを実行することです編集の依存を避けるために。 あなたのレポはcharts.domain.comで利用可能である場合は、ローカルで開発するときに、あなたのlocalhostチャートへcharts.domain.comを指すあなたのhostsファイルにエントリを追加し、その後、通常通りこれに

    dependencies: 
        - name: my-chart 
        repository: http://charts.domain.com 
        version: 0.0.1 
    

    を依存関係を追加。

    mkdir my-charts 
    mv my-char-a-0.0.1.tgz my-charts/ 
    helm repo index my-charts/ --url http://charts.domain.com 
    

    今はlocalhostから生成されたインデックス/レポを果たす:

    サンプルワークフローは、のようなものかもしれません。あなたの依存関係は常にcharts.domain.comになります。

    あなたが使用しているリモートホストによっては、このローカルインデックスをあなたのリモートにrsyncするだけで、リリースすることができたら、あなたのローカルとリモートは発散しています。

    また、ライブリポジトリを使用するかどうかに応じて、このホストエントリを無効にする必要があります。 ホストファイルエントリの編集をいつでもスクリプト化することができます。

  • +0

    "要件の手動アップデートでは明らかな欠点がありますが、他の選択肢はないとは思います。" ---- これは私の問題の要点です。私はすべてをすべて公開することができます。私はそれを避けることができれば、リポジトリの名前を明示的に焼くことはしません。私は「このグラフを入手しているリポジトリを見てください」と言っています – MRocklin

    関連する問題