在Ansible Tower或AWX中,可以通过使用循环结构和变量来避免创建大量的工作流模板。以下是一个示例解决方法:
- name: 主工作流模板
hosts: localhost
tasks:
- name: 任务1
command: echo "任务1"
- name: 任务2
command: echo "任务2"
- name: 任务3
command: echo "任务3"
- name: 副本工作流模板
hosts: localhost
tasks:
- name: 循环任务
command: echo "循环任务 {{ item }}"
loop: "{{ tasks_list }}"
tasks_list:
- 任务A
- 任务B
- 任务C
在Ansible Tower或AWX中,创建一个工作流作业模板,并指定主工作流模板作为主任务。
在工作流作业模板的“Extra Variables”字段中,指定变量文件的路径。
- name: /path/to/variables.yml
这样就可以通过修改变量文件来重复执行循环任务,而无需创建大量的工作流模板。