helm
installを使用すると、次のようなチャートをインストールするときに値を設定できます。
helm install --set favoriteDrink=slurm ./mychart
次のような値を設定したい:
helm install --set aws.subnets="subnet-123456, subnet-654321" ./mychart
しかし、失敗しました:
Error: failed parsing --set data: key " subnet-654321" has no value
helm
の--set
コンマを知っている,
そして次の文字列をキーとしてチェックします。したがって、このような文字列を設定するときにこの場合は使用できませんか?
helm install charts/mychart \
--set aws.subnets={subnet-123456,subnet-654321}
エラーが発生しました:
Error: This command needs 1 argument: chart name
helm install charts/mychart \
--set aws.subnets="subnet-123456\,subnet-654321"
https://github.com/kubernetes/helm/issues/1987#issuecomment-280497496 によると、中括弧を使用して複数の値を設定します。例:
--set foo={a,b,c}
だから、あなたの場合は次のようになります
--set aws.subnets={subnet-123456,subnet-654321}
CLIの形式と制限は、YAMLバージョンで何が期待されるかによって異なります。たとえば、YAMLマニフェストでfields
に値のリストを入力する必要がある場合、YAMLは次のようになります。
field:
- value1
- value2
- value3
これは、ヘルムCLIで次のように表現されます。
--set field[0]=value1 --set field[1]=value2 --set field[2]=value3
ドキュメントでは、--set field={value1,value2,value3}
動作しています。場合によっては、Error: This command needs 1 argument: chart name
これが上記の提案を提供する理由です
使用できる文字には制限もあります ドキュメントによる :
バックスラッシュを使用して、文字をエスケープできます。
--set name="value1\,value2"
となります:name: "value1,value2"
このコメントに関して ヘルムで複数の値を設定する方法? 私は引用符を使用し、これはうまくいきました:
--set aws.subnets="{subnet-123456,subnet-654321}"