ansible - переменная внутри переменной

Ansible 1.9.2 версия.

Поддерживает ли Ansible расширение переменной внутри переменной при ее оценке.

У меня есть задача скачать 3 архива из Artifactory.

Вместо того, чтобы писать 3 отдельных задания в роли, я использовал цикл ansible в пьесе. В default / main.yml роли Ansible у меня есть все обязательные переменные, определенные / доступные для роли, т.е. jmeterplugins_extras_artifactory_url и другие (standard / webdriver) видны дляperf_tests роль.

---
#- Download and install JMeterPlugins
# Use get_url when Ansible is 2.0+ is available on the machine (otherwise, we can't use get_url) thus, using wget.
- name: Download JMeterPlugins-*
  command: wget {{ jmeterplugins_{{ item.plugin }}_artifactory_url }}  
    chdir="{{ common_download_dir }}"
    creates="{{ common_download_dir }}/{{ jmeterplugins_{{ item.plugin }}_file }}"
  with_items:
    - { plugin: 'extras' }
    - { plugin: 'standard' }  
    - { plugin: 'webdriver' }   

Но с приведенным выше кодом я получаю сообщение об ошибке (как показано ниже):

15:58:57 TASK: [perf_tests | Download JMeterPlugins-*] ********************************* 
15:58:57 <jmeter01.super.fast.jenkins> ESTABLISH CONNECTION FOR USER: cmuser on PORT 22 TO jmeter01.super.fast.jenkins
15:58:57 fatal: [jmeter01.super.fast.jenkins] => Failed to template wget {{ jmeterplugins_{{ item.plugin }}_artifactory_url }} chdir="{{ common_download_dir }}" creates="{{ common_download_dir }}/{{ jmeterplugins_{{ item.plugin }}_file }}": template error while templating string: expected token 'variable_end', got '{'
15:58:57 
15:58:57 FATAL: all hosts have already failed -- aborting
15:58:57 
15:58:57 PLAY RECAP ******************************************************************** 
15:58:57            to retry, use: --limit @/home/cmuser/perf_tests.retry
15:58:57 
15:58:57 jmeter01.super.fast.jenkins : ok=23   changed=6    unreachable=1    failed=0   

Не поддерживает ansible, поддерживает расширение / оценку переменной, если переменная содержит другую переменную (особенно, когда я использую цикл).

Я просто не хочу расширять мою задачу простого цикла на 3 задачи с разными именами для загрузки zip-файлов для jmeterplugins_extras, jmeterplugins_standard и jmeterplugins_webdriver отдельно. Кажется, ошибка связана с Джинджей.

Как я могу использовать значение VARгига в другой переменной, т.е. есливар содержитгига, тогда я должен получить значение переменной "special_giga_variable" ({{special _ {{var}} _ variable}})? где var был определен в defaults / main.yml как:

вар: гига

Ответы на вопрос(2)

Ваш ответ на вопрос