多くのヘルムパッケージをテストしているので、これは私を困らせていました。簡単なスクリプトを作成しました。これを変更して、ワークフローをソートすることができます。
新しいワークフローまず、グラフをtgzとして作業ディレクトリにフェッチします。
helm fetch repo/chart
次に、作業中に直接bashスクリプトを実行します-私はhelmkと名付けました
helmk myreleasename mynamespace chart.tgz [any parameters for kubectl create]
helmkの内容-機能するようにkubeconfigクラスター名を編集する必要があります
#!/bin/bash
echo usage $0 releasename namespace chart.tgz [createparameter1] [createparameter2] ... [createparameter n]
echo This will use your namespace then shift back to default so be careful!!
kubectl create namespace $2 #this will create harmless error if namespace exists have to ignore
kubectl config set-context MYCLUSTERNAME --namespace $2
helm template -n $1 --namespace $2 $3 | kubectl convert -f /dev/stdin | kubectl create --save-config=true ${@:4} -f /dev/stdin
#note the --namespace parameter in helm template above seems to be ignored so we have to manually switch context
kubectl config set-context MYCLUSTERNAME --namespace default
私は手動で新しい目的の名前空間コンテキストに切り替えてから再び元に戻し、シングルユーザーの開発者のみに使用するかコメントアウトするため、少し危険なハックです。
このようなkubectl変換機能の使用に関する警告が表示されます
カスタマイズするためにYAMLを編集する必要がある場合-/ dev / stdinの1つを中間ファイルに置き換えるだけですが、私が持っているように、save-configで「create」を使用してそれを取得し、変更を「適用」するだけの方が良いでしょう。つまり、kubernetesにも記録されます。幸運を