2017-09-18 58 views
0

它看起來像with_together只允許兩個列表,如下所示:Ansible的with_together指令只允許2所列出

- name: combine items 
    set_fact: 
    commandList: "{{ commandList }} + [ '{{ item[0].path }} {{ item[1].path }} {{ item[3].path }}' ]" 
    with_together: 
    - "{{ findXmls['files'] }}" 
    - "{{ findEars['files'] }}" 
    - "{{others['files'] }}" 

添加名爲others第三列表時失敗。即使第三個列表與其他列表中的某個列表重複,它也會失敗,因此它不是結構/格式問題。

這是標準行爲嗎?

如果是這樣,我將如何去做類似於with_together這樣的事情,這將允許我一起使用3個列表?

它必須像with_together一樣工作,因爲它需要是從第n個元素到其他列表的第n個元素的1:1映射。

回答

1

一切工作正常N列表。您應該訪問零基索引的項目:

'{{ item[0].path }} {{ item[1].path }} {{ item[2].path }}' 

這是3個列表的示例。

您嘗試訪問第三項時出現錯字 - 應該是item[2],而不是item[3]

+0

哦,男人......我不能相信我把3而不是2.謝謝你指出,我從來不會注意到我自己 –