Ansible から始めて、ReST API を使用して外部アプリケーションとやり取りしようとしています。
インベントリ ファイル内のすべてのホストを、jinja2 テンプレートを呼び出すロールによって使用される変数ファイルで指定された POD 名と比較しようとしています。
私の在庫ファイルは次のようになります。
[all]
'POD-9'
'POD-10'
変数ファイル:
pods:
params:
- name: POD-9
- name: POD-10
{% for pod in pods.params %}
{% if '{{ inventory_hostname }}' == '{{ pod.name }}' %}
<generate JSON template here>
{% endif %}
{% endfor %}
ただし、if ステートメントは有効になりません。変数ファイルのポッド名と同じ inventory_hostname でのみテンプレートを生成したい
現在の JSON ファイルには次の両方が含まれています: { "pod": { "name": "POD-9" } "pod": {
"name": "POD-10" } }