やりたいこと
Ansibleのテンプレートで変数名の一部に変数を使いたいです。
ansible_eth0
変数のeth0
の部分を変数として処理したいです。
詳細
Ansibleで取得した情報もとに、ansible_interfaces
とansible_eth0
などからテンプレートを使用してファイルを作ろうとしています。
ansible_interfaces
配列にインタフェース一覧が入っていて、そのインタフェース名の変数を一部に使用したansible_eth0
などがあります。
構造的は、以下のようになっています(説明用に抜粋)。
JSON
1{ 2 "ansible_eth0": { 3 "ipv4": { 4 "address": "192.168.0.1", 5 "netmask": "255.255.255.0" 6 } 7 }, 8 "ansible_interfaces": [ 9 "eth0" 10 ] 11}
構文エラーになりますが、テンプレートで以下のようなことがしたいです。
{% for interface in ansible_interfaces %} ipv4 ({{interface}}) : {{['ansible_'+interface]ipv4.address}} / {{['ansible_'+interface]ipv4.netmask}} {% endfor %}
一番基準となる変数名の一部に変数を使うことはできるのでしょうか。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/03/20 01:25