Tôi đã sau vars
bên trong playbook ansible của tôi, tôi có cơ cấu như sauAnsible mẫu thêm 'u' để mảng trong mẫu
domains:
- { main: 'local1.com', sans: ['test.local1.com', 'test2.local.com'] }
- { main: 'local3.com' }
- { main: 'local4.com' }
Và đã sau bên trong của tôi conf.j2
{% for domain in domains %}
[[acme.domains]]
{% for key, value in domain.iteritems() %}
{% if value is string %}
{{ key }} = "{{ value }}"
{% else %}
{{ key }} = {{ value }}
{% endif %}
{% endfor %}
{% endfor %}
Bây giờ khi tôi vào máy ảo và xem tệp tôi nhận được thông tin sau:
Đầu ra
[[acme.domains]]
main = "local1.com
sans = [u'test.local1.com', u'test2.local.com']
[[acme.domains]]
main = "local3.com"
[[acme.domains]]
main = "local4.com"
Thông báo các u bên trong mảng sans
.
Excpeted đầu ra
[[acme.domains]]
main = "local1.com"
sans = ["test.local1.com", "test2.local.com"]
[[acme.domains]]
main = "local3.com"
[[acme.domains]]
main = "local4.com"
Tại sao điều này xảy ra và làm thế nào tôi có thể sửa chữa nó?
Điều đó có hiệu quả, cảm ơn sự giúp đỡ của bạn. – Steve