リストとして data values を代入
この記事では ytt
でリストデータをコマンドパラメーターとして渡す方法を説明しています。
トランスポートノードとして ESXi を NSX-T へ追加しようとした時に、IP List の指定でつまずいたので、備忘録としてまとめます。
おさらい
ytt
でテンプレートへ値を渡すには、オプション --data-values
あるいは短縮系のオプション -v
を使うことになります。
以下のようなテンプレートがあるとして
|
|
次のように ytt
を実行すると、以下の出力を得ることができます。
|
|
しかし、["apple", "orange"]
といった任意のリストを ytt
に渡したいというケースもあります。
-v
を使うと…
以下のように、like
がリストとなることを期待しています。
|
|
では、同じテンプレートにリストを ytt
で渡します。
|
|
しかしながら、実際には上のようにリストを表す [
と ]
といったブラケットも含んだ一つの文字列として代入されていまいます。
これは、こちらの記事でも書いたように --data-values
-v
は値を常に文字列として扱うためです。
値を yaml としてパース
値を文字列ではなく yaml の一部としてパースするには、オプション --data-values-yaml
を使います。
|
|
値として渡すリストの文字列要素は、"
で囲わなくても文字列として認識してくれます。
|
|