Ansible剧本中的Jinja2
我怎样才能把收集到的事实循环成一本易懂的剧本? 我试过: 但这不起作用,它会导致语法错误。甚至可以在剧本中使用jinja吗 我使用ansible galaxy角色(info.haproxy),我不想更改提供的模板。不,你不能这样做 这必须在模板中完成,例如: 模板/haproxy.cfg.j2:Ansible剧本中的Jinja2,ansible,ansible-playbook,Ansible,Ansible Playbook,我怎样才能把收集到的事实循环成一本易懂的剧本? 我试过: 但这不起作用,它会导致语法错误。甚至可以在剧本中使用jinja吗 我使用ansible galaxy角色(info.haproxy),我不想更改提供的模板。不,你不能这样做 这必须在模板中完成,例如: 模板/haproxy.cfg.j2: ... {% for host in groups['app-servers'] %} backend {{ hostvars[host]['ansible_hostname'] }} server
...
{% for host in groups['app-servers'] %}
backend {{ hostvars[host]['ansible_hostname'] }}
server {{ hostvars[host]['ansible_hostname'] }} {{ hostvars[host]['ansible_eth0']['ipv4']['address'] }}:1234 check inter 5000 slowstart 2m
{% endfor %}
...
和使用:
tasks:
- name: Deploy haproxy config
template: src=templatepath/haproxy.cfg.j2 dest=/etc/haproxy/haproxy.cfg
你明白了,YMMV
祝你好运
tasks:
- name: Deploy haproxy config
template: src=templatepath/haproxy.cfg.j2 dest=/etc/haproxy/haproxy.cfg