Π― ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°Π» Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΎΠ½Π»Π°ΠΉΠ½-ΡΡΠ°ΡΡΠΈ ΠΈ, ΠΏΠΎΡ ΠΎΠΆΠ΅, Π½Π΅ Π½Π°ΡΠ΅Π» ΡΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΡ ΠΎ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ , ΠΏΠΎΡΡΠΎΠΌΡ Ρ ΠΎΡΠΊΡΡΠ²Π°Ρ Π·Π°ΠΏΡΠΎΡ ΡΡΠ½ΠΊΡΠΈΠΈ. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ½Π΅ΡΡΠΈ ΠΏΠΎΠ»ΡΠ·Ρ ΠΌΠ½ΠΎΠ³ΠΈΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ°ΠΌ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π²ΡΠ·ΠΎΠ²Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ .
ΠΠΎΡΠΌΠ°Π»ΡΠ½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΡΠ°ΠΊ:
{{ variable }}
ΠΡΠ»ΠΎ Π±Ρ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΡΠ°Π·ΡΠ΅ΡΠΈΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΈΠ· Π΄ΡΡΠ³ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π΄Π»Ρ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΈΠΌΠ΅Π½ΠΈ Π΄ΡΡΠ³ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ.
{{ variable{{ generated_var }} }}
ΠΠΎΠΉ ΡΠΎΡΠ½ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ - Ρ Ansible. Π― Π±Π΅ΡΡ ΡΠΏΠΈΡΠΎΠΊ ΡΡΡΡΠΎΠΉΡΡΠ² ΡΠ΅ΡΠ΅Π²ΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ (ansible_interfaces). ΠΠ°ΡΠ΅ΠΌ Ρ ΠΌΠΎΠ³Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΎ Π΄Π»Ρ ΡΡΡΠ»ΠΊΠΈ Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΈΠ· Π΄ΡΡΠ³ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ansible_eth0). ΠΠΎΡ Π±Π°Π·ΠΎΠ²Π°Ρ ΡΡ Π΅ΠΌΠ° ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΌΡ ΠΏΡΡΠ°Π΅ΠΌΡΡ Π΄ΠΎΡΡΠΈΡΡ.
{% for interface in ansible_interfaces %}
IPADDR{{ loop.index }}={{ ansible_{{ interface }}.ipv4.address }}
NETMASK{{ loop.index }}={{ ansible_{{ interface }}.ipv4.netmask }}
{% endfor %}
Jinja2 Π½Π΅ Π»ΡΠ±ΠΈΡ ΡΡΠΎ ΠΏΡΠΈ ΡΠ΅Π½Π΄Π΅ΡΠΈΠ½Π³Π΅, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ ΠΆΠ°Π»ΡΠ΅ΡΡΡ Π½Π° Π½Π°Π»ΠΈΡΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΠΊΠΎΠ±ΠΎΠΊ. Π§ΡΠΎ ΠΊΠ°ΡΠ°Π΅ΡΡΡ Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ² ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ, Ρ Π΄ΡΠΌΠ°Π» Π² ΡΡΡΠ»Π΅ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΡΡΠΈΡ Π΄Π²ΡΡ ΡΠ°Π·Π½ΡΡ ΠΈΠ΄Π΅ΠΉ.
(1) Π Π°Π·ΡΠ΅ΡΠΈΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ . ΠΡΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠΎ, ΡΡΠΎ Ρ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π» ΡΠ°Π½Π΅Π΅; ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΈΠ·Π½ΡΡΡΠΈ.
(2) ΠΠΎΠ±Π°Π²ΡΡΠ΅ ΡΠΈΠ»ΡΡΡ Π΄Π»Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΡΠΎΠΊΠΈ Π² ΠΈΠΌΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ.
{% for interface in ansible_interfaces %}
{% set interface_string="ansible_%s.ipv4.address"|format(interface) %}
IPADDR{{ loop.index }}={{ interface_string|variable }}
NETMASK{{ loop.index }}={{ interface_string|variable }}
{% endfor %}
ΠΠΎΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΡΠΉ (Π½Π΅ΡΠ°Π±ΠΎΡΠΈΠΉ) ΠΊΠΎΠ΄, ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡΠΈΠΉ Π²ΡΠΎΡΡΡ ΠΈΠ΄Π΅Ρ.
# vim jinja2/jinja2/filters.py
<strong i="21">@environmentfilter</strong>
def do_variable(environment, s):
string_to_variable = "{{ %s }}" % s
return environment.from_string(string_to_variable).render()
Π ΠΈΠ΄Π΅Π°Π»Π΅ Π²Π°ΡΠΈΠ°Π½Ρ 1 Π±ΡΠ» Π±Ρ ΠΌΠ΅Π½Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡΠΌ Ρ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ. Π‘ΠΎΠΎΠ±ΡΠΈΡΠ΅ ΠΌΠ½Π΅ ΡΠ²ΠΎΠΈ ΠΌΡΡΠ»ΠΈ ΠΏΠΎ ΡΡΠΎΠΌΡ ΠΏΠΎΠ²ΠΎΠ΄Ρ. Π― Π²ΠΏΠ΅ΡΠ²ΡΠ΅ ΠΈΠ·ΡΡΠ°Ρ ΠΊΠΎΠ΄ Jinja2, Π½ΠΎ Ρ Ρ ΠΎΡΠ΅Π» Π±Ρ Π²Π½Π΅ΡΡΠΈ ΡΠ²ΠΎΠΉ Π²ΠΊΠ»Π°Π΄, Π΅ΡΠ»ΠΈ Ρ ΠΊΠΎΠ΄ΠΎΠΌ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΊΠ°ΠΊΠ°Ρ-Π»ΠΈΠ±ΠΎ ΠΏΠΎΠΌΠΎΡΡ.
http://serverfault.com/questions/762079/how-to-loop-through-interface-facts
ΠΠΎΡ ΠΎΠΆΠ΅, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ:
{{ hostvars[inventory_hostname]['ansible_%s' | format(interface)].ipv4.address }}
Π― ΠΎΡΠ΅Π½Ρ ΡΠΈΠ»Π΅Π½: -1: ΠΏΠΎ ΠΈΠΌΠ΅Π½Π°ΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
. ΠΠ±ΡΡΠ½ΠΎ ΡΡΠΎ ΠΏΡΠΈΠ·Π½Π°ΠΊ ΠΏΠ»ΠΎΡ
ΠΎΠΉ Π°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΡ, Π΅ΡΠ»ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ ΡΠ»ΠΎΠ²Π°ΡΡ / ΡΠΏΠΈΡΠΎΠΊ Π΄Π°Π½Π½ΡΡ
, Π΅ΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΊ Π½Π΅ΠΌΡ Π΄ΠΎΡΡΡΠΏ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ° ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅Π±ΡΠ°ΡΡ Π΅Π³ΠΎ. FWIW, Ρ Π΄ΡΠΌΠ°Ρ, ΡΡΠΎ ΡΡΠΎΡ hostvars
dict Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠΎΠ΄Π»ΠΈΠ² ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΌ ΡΠΎΠΏΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΈΠΌΠ΅Π½ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² dict Ρ Π΄Π°Π½Π½ΡΠΌΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°. Π― Π±Ρ ΠΎΡΠΊΡΡΠ» Π²ΠΎΠΏΡΠΎΡ Ρ Ansible, ΠΏΡΠ΅Π΄Π»Π°Π³Π°Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΡΠΎΡ ΡΠΏΠΈΡΠΎΠΊ Π½Π° dict. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΈΡΠ΅ΡΠ°ΡΠΈΡ ΠΏΠΎ dict Π΄Π°Π΅Ρ Π²Π°ΠΌ Π΅Π³ΠΎ ΠΊΠ»ΡΡΠΈ, ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ Π΄Π°ΠΆΠ΅ Π½Π΅ Π±ΡΡΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π½Π΅ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΠΌ, Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈ Π΅Π³ΠΎ Π½Π° dict ...
Π― Π½Π° 100% ΡΠΎΠ³Π»Π°ΡΠ΅Π½ Ρ ΡΠ΅ΠΌ, ΡΡΠΎ ΡΠ΅Π½Π΄Π΅ΡΠΈΠ½Π³ Π½Π°ΠΈΠ·Π½Π°Π½ΠΊΡ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈΠΌΠ΅Π½ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ * N - ΠΠΠΠ₯ΠΠ― ΠΈΠ΄Π΅Ρ.
Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Ρ ΠΏΡΠΈΡΠ΅Π» ΡΡΠ΄Π° Π² ΠΏΠΎΠΈΡΠΊΠ°Ρ
ΡΠ΅ΡΠ΅Π½ΠΈΡ Π΄Π»Ρ Π²Π»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠ΅Π½Π΄Π΅ΡΠΈΠ½Π³Π° ΡΠ½Π°ΡΡΠΆΠΈ Π²Π½ΡΡΡΡ ΠΈ Π² ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΌ ΠΈΡΠΎΠ³Π΅ ΠΈΠ·ΡΡΠΈΠ» ΡΡΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠ°ΠΌ. ΠΡΡΡ Π»ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π΄Π»Ρ ΡΠ°ΠΊΠΎΠΉ ΡΡΡΠΊΠΈ? ΠΡΠ΄Π΅Ρ Π»ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠΈΠ»ΡΡΡΠ° nested_render
ΠΏΠΎΠ»Π΅Π·Π½ΡΠΌ ΠΈΠ»ΠΈ Π²ΡΠ΅Π΄Π½ΡΠΌ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ ΡΠ±ΠΈΡΡ Ρ ΡΠΎΠ»ΠΊΡ Π»ΡΠ΄Π΅ΠΉ?
ΠΠ»ΠΎΠΆΠ΅Π½Π½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠ΅ΡΠ°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ WTForms, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠ°ΠΊΠ°Ρ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ, ΠΊΠ°ΠΊ
{{ form.playername(value="{{ currentname }}") }}
Π±ΡΠ»ΠΎ Π±Ρ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΡΡΠ½Π΅Π΅, ΡΠ΅ΠΌ Π»ΡΠ±ΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Ρ Π½Π°ΡΠ΅Π».
{{ form.playername(value=currentname) }}
Π΄Π΅Π»Π°Π΅Ρ ΡΡΠΎ. Π½ΠΎ, ΠΊ ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΡΠ΅ΠΊΡΡΠΈΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π² ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ ΡΠΎΡΠΌΡ ΠΈ Π²ΠΎΠΎΠ±ΡΠ΅ Π½Π΅ Π±Π΅ΡΠΏΠΎΠΊΠΎΠΈΡΡΡΡ ΠΎΠ± ΡΡΠΎΠΌ Π² ΡΠ°Π±Π»ΠΎΠ½Π°Ρ
ΠΡ , ΡΡΠΎ ΡΠ°ΠΊ ΠΏΡΠΎΡΡΠΎ! Π ΠΈΡΠΎΠ³Π΅ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π» Javascript Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ· ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ currentname. ΠΠΎΠ³Π΄Π° Ρ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π² ΠΎΠ±ΡΠ΅ΠΊΡΠ΅ ΡΠΎΡΠΌΡ Π² ΠΊΠΎΠ΄Π΅ Python, ΠΎΠ½ΠΎ Π½Π΅ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅ΡΡΡ.
ΠΡΠΎΠΉΠ΄ΠΈΡΠ΅ ΠΌΠΈΠΌΠΎ #pocoo
Π² IRC ΠΈ ΠΏΠΈΠ½Π³ΡΠΉΡΠ΅ ΠΌΠ΅Π½Ρ ΡΡΠ΄Π° (Π·Π΄Π΅ΡΡ ΠΎΡΠ΅Π½Ρ ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΡΡΡΠΎΠΏΠ°), ΠΈ Ρ ΠΌΠΎΠ³Ρ ΡΠΊΠ°Π·Π°ΡΡ Π²Π°ΠΌ, ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ.
Π‘Π°ΠΌΡΠΉ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ
http://serverfault.com/questions/762079/how-to-loop-through-interface-facts
ΠΠΎΡ ΠΎΠΆΠ΅, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ:
Π― ΠΎΡΠ΅Π½Ρ ΡΠΈΠ»Π΅Π½: -1: ΠΏΠΎ ΠΈΠΌΠ΅Π½Π°ΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ . ΠΠ±ΡΡΠ½ΠΎ ΡΡΠΎ ΠΏΡΠΈΠ·Π½Π°ΠΊ ΠΏΠ»ΠΎΡ ΠΎΠΉ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ, Π΅ΡΠ»ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ ΡΠ»ΠΎΠ²Π°ΡΡ / ΡΠΏΠΈΡΠΎΠΊ Π΄Π°Π½Π½ΡΡ , Π΅ΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΊ Π½Π΅ΠΌΡ Π΄ΠΎΡΡΡΠΏ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ° ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅Π±ΡΠ°ΡΡ Π΅Π³ΠΎ. FWIW, Ρ Π΄ΡΠΌΠ°Ρ, ΡΡΠΎ ΡΡΠΎΡ
hostvars
dict Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠΎΠ΄Π»ΠΈΠ² ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΌ ΡΠΎΠΏΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΈΠΌΠ΅Π½ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² dict Ρ Π΄Π°Π½Π½ΡΠΌΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°. Π― Π±Ρ ΠΎΡΠΊΡΡΠ» Π²ΠΎΠΏΡΠΎΡ Ρ Ansible, ΠΏΡΠ΅Π΄Π»Π°Π³Π°Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΡΠΎΡ ΡΠΏΠΈΡΠΎΠΊ Π½Π° dict. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΈΡΠ΅ΡΠ°ΡΠΈΡ ΠΏΠΎ dict Π΄Π°Π΅Ρ Π²Π°ΠΌ Π΅Π³ΠΎ ΠΊΠ»ΡΡΠΈ, ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ Π΄Π°ΠΆΠ΅ Π½Π΅ Π±ΡΡΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π½Π΅ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΠΌ, Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈ Π΅Π³ΠΎ Π½Π° dict ...