ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

with_items 迭代

2021-07-12 18:05:15  阅读:139  来源: 互联网

标签:web group name 迭代 items changed 192.168 item


目录

字符串

字典


当有需要重复性执行的任务时,可以使用迭代机制

对迭代项的引用,固定变量名为“item”

要在task中使用with_items给定要迭代的元素列表
 列表格式:
    字符串
    字典


字符串

[root@ansible ~]# vim item.yml
  
---
- hosts: web
  remote_user: root

  tasks:
   - name: create files
     file: name=/root/{{ item }} state=touch
     with_items:
      - ip.sh
      - var.yml
      - 111.txt

[root@ansible ~]# ansible-playbook  item.yml   

PLAY [web] *********************************************************************

TASK [Gathering Facts] *********************************************************
ok: [192.168.60.4]
ok: [192.168.60.3]

TASK [create files] ************************************************************
changed: [192.168.60.3] => (item=ip.sh)
changed: [192.168.60.4] => (item=ip.sh)
changed: [192.168.60.4] => (item=var.yml)
changed: [192.168.60.3] => (item=var.yml)
changed: [192.168.60.4] => (item=111.txt)
changed: [192.168.60.3] => (item=111.txt)

PLAY RECAP *********************************************************************
192.168.60.3               : ok=2    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   
192.168.60.4               : ok=2    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   

字典

[root@ansible ~]# vim item2.yml                 
---
#this is item dictionary!
- hosts: web
  remote_user: root

  tasks:
   - name: create group
     group: name={{item}} state=present
     with_items:
      - app
      - web
   - name: create user
     user: name={{item.name}} group={{item.group}} state=present
     with_items:
      - {name: 'app',group: 'app'}
      - {name: 'web',group: 'web'}

[root@ansible ~]# ansible-playbook  item2.yml   

PLAY [web] *********************************************************************

TASK [Gathering Facts] *********************************************************
ok: [192.168.60.4]
ok: [192.168.60.3]

TASK [create group] ************************************************************
changed: [192.168.60.4] => (item=app)
changed: [192.168.60.3] => (item=app)
changed: [192.168.60.4] => (item=web)
changed: [192.168.60.3] => (item=web)

TASK [create user] *************************************************************
changed: [192.168.60.4] => (item={u'group': u'app', u'name': u'app'})
changed: [192.168.60.3] => (item={u'group': u'app', u'name': u'app'})
changed: [192.168.60.3] => (item={u'group': u'web', u'name': u'web'})
changed: [192.168.60.4] => (item={u'group': u'web', u'name': u'web'})

PLAY RECAP *********************************************************************
192.168.60.3               : ok=3    changed=2    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   
192.168.60.4               : ok=3    changed=2    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0 

标签:web,group,name,迭代,items,changed,192.168,item
来源: https://blog.csdn.net/chanx44/article/details/118679671

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有