下面是一个使用Ansible从目录中读取并循环这些项目的代码示例:
---
- hosts: localhost
gather_facts: false
tasks:
- name: Get list of projects from directory
find:
paths: /path/to/projects/directory
file_type: directory
register: project_list
- name: Loop through project list
include_tasks: "{{ item }}/main.yml"
loop: "{{ project_list.files | map(attribute='path') | list }}"
在上面的示例中,我们首先使用find
模块获取指定目录下的所有子目录,并将结果保存在project_list
变量中。然后,我们使用include_tasks
模块循环遍历project_list
中的每个项目,并调用每个项目的main.yml
文件。
请注意,这里假设每个项目都有一个名为main.yml
的文件来定义Ansible任务。你可以根据实际情况调整这个文件名。
希望这个示例能帮助到你!