如何使用单个任务在ansible中的同一目录中创建目录和文件

如何使用单个任务在ansible中的同一目录中创建目录和文件,ansible,Ansible,是否有任何方法可以使用单个任务在ansible中的同一目录中创建目录和文件?目前,在我的任务中,我正在使用文件模块state=directory创建一个目录。如何在同一任务中触摸该目录中的文件?您可以使用: @DOMH给出了正确的答案,我只是想让它在剧本中更方便 剧本将如下所示: --- - name: Creating directory and files hosts: localhost become: yes become_user: root tasks: -

是否有任何方法可以使用单个任务在ansible中的同一目录中创建目录和文件?目前,在我的任务中,我正在使用文件模块state=directory创建一个目录。如何在同一任务中触摸该目录中的文件?

您可以使用:


@DOMH给出了正确的答案,我只是想让它在剧本中更方便

剧本将如下所示:

---
- name: Creating directory and files
  hosts: localhost
  become: yes
  become_user: root

  tasks:

  - name: Create a directory with a file inside
    file:
      path: "{{ item.path }}"
      state: "{{ item.state }}"
    loop:
      - { path: /tmp/foo, state: directory }
      - { path: /tmp/foo/bar.txt, state: touch }
我们可以在运行之前使用以下工具进行测试:

 ansible-playbook -i localhost mkdir.yml --check
 ansible-playbook -i localhost mkdir.yml --check