当有需要重复性执行的任务时,可以使用迭代机制。其使用格式为将需要迭代的内容定义为item变量引用,并通过loop语句指明迭代的元素列表即可。loop的值是python list数据结构,每个task会循环读取list的值,然后后key的名称是item,list里面也支持python字典。
例子一:安装多个软件
tasks:
- name: "Install Packages"
yum: name={{ item }} state=latest
loop:
- httpd
- mysql-server
- php
例子二:批量创建多个用户。(with_items)
- hosts: slave
remote_user: suixiaofeng
sudo: yes
tasks:
- name: "add user"
user: name={{ item.name }} state=present groups={{ item.groups }}
loop:
- {name: "test5", groups: "tom"}
- {name: "test6", groups: "tom"}
其中引用变量时前缀item变量是固定的,而item后跟的键名就是在loop中定义的字典键名。
来源:CSDN
作者:JetBrains_孙健
链接:https://blog.csdn.net/sj349781478/article/details/104118932