Я знаю, что это похоже на повторяющийся вопрос об этом конкретном предупреждении, однако мой вариант использования использует переменную таким образом, чтобы она интерпретировалась как буквальная строка при удалении {{скобок}}
ansible 2.8.1
У меня есть следующий РАБОЧИЙ Ansible фрагмент, обратите внимание на предложение when
:
- name: Set DNS for data host 1
route53:
command: create
zone: "{{ dns_domain_name }}"
record: "elasticsearch-{{ env }}-01"
type: A
ttl: 300
value: "{{ ec2_private_ip_address }}"
wait: no
private_zone: True
overwrite: yes
when: tag_name is match("xhost-{{ env }}01")
I ' m получает следующее предупреждение:
[WARNING]: conditional statements should not include jinja2 templating
delimiters such as {{ }} or {% %}. Found: tag_name is
match("xhost-{{ env }}01")
Если я удалю разделитель:
when: tag_name is match("xhost-env01")
Не будет работать, поскольку он является частью строки запроса match()
. Я не получаю ошибок, но запрос на совпадение не работает.
Как я могу справиться с этим, не получая надоедливых предупреждений?
Спасибо!