私はIPアドレスのリストを生成したい(最後の8ビットの範囲を使用するので、120-190はxxx120-xxx190に変換される)default/main.yml in my新しいネットワークインターフェイスを作成し、新しい設定ファイルを生成するために使用します。jinjaテンプレート内の指定された範囲を使用してipのリストを作成する
デフォルト/ main.yml:私はこのアプローチを試みた
ip_list: "{%for address_end in range(50,99)%} 192.168.0.{{address_end}}{%endfor%}" conf_list: "{%for ip in ip_list%}server {{ip}}:6666 {%endfor%}"
して、テンプレートに
template.conf.j2それを使用する:
{% for conf_line in conf_list %}
{{conf_line}}
{% endfor %}
を
すべて私は生成された設定ファイルに入っていた:
s
e
r
v
e
r
:
6
6
6
6
s
e
r
v
e
r
1
:
6
ので、私の推測では、私はリストが、ちょうど長い文字列を生成していないよということであると私はtemplate.conf.j2にforループを使用したとき、私は、単一の文字を反復処理します。私はthis問題への答えを使ってみましたが、私はすべて構文エラーでした。何が私を助けてくれるのでしょうか?
代替案はクールだと思われますが、私の場合はどのようにしてバースをJSONリストとしてフォーマットしますか? – Sackhorn
答えの私の例のリストに従ってください:ip-addressesの周りに一重引用符を置き、各アドレスの後にコンマを置き、両括弧を角括弧で置きます。 –
JSONのリストはどのように見えるのですか?jinjaのテンプレートの構文に問題があります。私の場合にこれが適用できるかどうかを知りたがっています:) – Sackhorn