Ansible:使用相關變數循環模板

Ansible:使用相關變數循環模板

鑑於多變的結構

syncjobs:
  - filename: output1.bash
    content: data1
  - filename: output2.bash
    content: data2

我想循環它創建文件ansible.builtin.template使用字段檔案名稱為了目的地。我可以透過以下方式實現這一點

- name: Create scripts
  ansible.builtin.template:
    src: template.bash.j2
    dest: /opt/bin/{{ item.filename }}
    owner: root
    mode: "u+x,o-r"
    backup: true
  with_items: "{{ syncjobs }}"

但我不知道如何解決具體問題內容場從同步作業模板檔案中的字典。當然我可以訪問變量同步作業,但我需要解決內容來自相關領域字典對於每個特定的迭代。

我試圖設定一個額外的事實,例如目前檔案名稱項目.檔名裡面一個ansible.builtin.block,但不幸的是塊似乎不支援循環。

答案1

跟劇本裡的一模一樣。模板中也有相同的變量,因此可以在模板文件中{{ item }}引用。 {{ item.content }}(實際上,全部playbook 變數在範本中可用,與呼叫的 playbook 特定位置存在的集合相同ansible.builtin.template

相關內容