Я пытался использовать Ansible, чтобы поместить некоторые шаблоны jinja2 в каталог, например, path/from/*.j2 to path/to/*.txt
.
В моем ./defaults/main.yml
:
---
test_var:
- a: 1
b: 2
- a: 10
b: 20
В моем ./tasks/main.yml
:
---
- name: "Copy file"
include: copy-files.yml
with_nested:
- test_var
loop_control:
loop_var: test_loop
В моем ./tasks/copy-files.yml
:
---
- name: "copy {{ test_loop }}"
template:
src: "{{ test_loop.0.a }}"
dest: "{{ test_loop.0.b }}"
я получил следующую ошибку:
fatal: [localhost]: FAILED! => {"failed": true, "msg": "'unicode object' has no attribute 'b'"}
Затем я использовал отладку и увидел, что переменные пропали.
task path: ./tasks/main.yml
Wednesday 06 February 2019 01:15:10 +0000 (0:00:00.286) 0:00:04.308 ****
ok: [localhost] => {
"msg": [
{
"a": 1,
"b": 2
},
{
"a": 10,
"b": 20
}
]
}
TASK [./ : Copy files] ********
task path: ./tasks/main.yml
Wednesday 06 February 2019 01:15:11 +0000 (0:00:00.064) 0:00:04.373 ****
TASK [./ : debug] *******************************
task path: ./tasks/copy-files.yml
Wednesday 06 February 2019 01:15:11 +0000 (0:00:00.089) 0:00:04.463 ****
ok: [localhost] => {
"msg": [
"a",
"b"
]
}
Так что тут не так?ansible 2.1.0.0