Size: a a a

2021 March 07

TG

Timur Gadiev in Ansible
Это не ямл вообще
источник

HW

Hello World in Ansible
Alex Domoradov
Ошибку мы должны угадать?
Error was a <class 'ansible.errors.AnsibleError'>, original message: template error while templating string: unexpected '.'. String: {{ .app }}"}
источник

HW

Hello World in Ansible
Timur Gadiev
Так у вас нет таких переменных?
В Ansible нет таких переменных
источник

TG

Timur Gadiev in Ansible
Hello World
Error was a <class 'ansible.errors.AnsibleError'>, original message: template error while templating string: unexpected '.'. String: {{ .app }}"}
Переменная не может начинаться с точки. Как я и говорил.
источник

HW

Hello World in Ansible
Timur Gadiev
Переменная не может начинаться с точки. Как я и говорил.
Все что с точки это не переменные ansible, а самого приложения. Там Go Template использует. Вот из-за этого как понимаю все и ломается
источник

TG

Timur Gadiev in Ansible
То, что в двойных фигурных скобках, jinja воспринимает как переменную и пытается ее раскрыть, но натыкается на некорректное имя
источник

TG

Timur Gadiev in Ansible
Если вам не нужно раскрывать двойные фигурные, заключите этот участок текста с фигурными скобками в окружение raw
источник

HW

Hello World in Ansible
Я понял, спасибо! Как раз то решение, которое @ag0n1k скинул выше
источник

TG

Timur Gadiev in Ansible
{% raw %}
   <ul>
   {% for item in seq %}
       <li>{{ item }}</li>
   {% endfor %}
   </ul>
{%
endraw %}
источник

TG

Timur Gadiev in Ansible
Как-то так
источник

HW

Hello World in Ansible
Timur Gadiev
{% raw %}
   <ul>
   {% for item in seq %}
       <li>{{ item }}</li>
   {% endfor %}
   </ul>
{%
endraw %}
В моем случае примерно как-то так должно получится?
template: {% raw %} '{"app": "{{ .app }}","version": "{{ .version }}","ts": "{{ .timestamp }}"}' {% endraw %}
источник

TG

Timur Gadiev in Ansible
Hello World
В моем случае примерно как-то так должно получится?
template: {% raw %} '{"app": "{{ .app }}","version": "{{ .version }}","ts": "{{ .timestamp }}"}' {% endraw %}
Да, как-то так
источник

HW

Hello World in Ansible
Timur Gadiev
Да, как-то так
Попробовал. Вот что получаю:
Syntax Error while loading YAML.
 found character '%' that cannot start any token
источник

TG

Timur Gadiev in Ansible
Hello World
Попробовал. Вот что получаю:
Syntax Error while loading YAML.
 found character '%' that cannot start any token
Попробуйте поставить начало блока raw перед template:
источник

SP

Sergey Pechenkó in Ansible
Hello World
Попробовал. Вот что получаю:
Syntax Error while loading YAML.
 found character '%' that cannot start any token
Потому что {% - начало блока Jinja - должно находиться внутри кавычек. Настойчиво рекомендую изучить синтаксис YaML.
источник

HW

Hello World in Ansible
Timur Gadiev
Попробуйте поставить начало блока raw перед template:
Пробовал разные комбинации, в том числе и с обертыванием в кавычки. Не помогает
источник

AS

Aleksey Shirokikh in Ansible
Можно переопределить символы которые используются для шаблонизации
источник

AS

Aleksey Shirokikh in Ansible
И делайте как вам нравится
источник

AS

Aleksey Shirokikh in Ansible
Хоть (()) или @@::( var )::@@
источник

AS

Aleksey Shirokikh in Ansible
А вообще конечно интересно посмотреть на плейбук в котором будет нарушена максимальное кол-во канонов
источник