Ansible循环

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/weixin_37038498/article/details/75010532

基础循环

节省时间,可以将重复的事情,写成循环模式

playbook

---
- hosts: test1
  gather_facts: false
  tasks:
  - name: 测试循环
    debug:
      msg: "{{ item }}"
    with_items:
      - aaa
      - bbb

执行结果

[root@office playbooks]# ansible-playbook standard_loops.yml 

PLAY [test1] ***************************************************************************

TASK [测试循环] ***************************************************************************
ok: [test1] => (item=aaa) => {
    "item": "aaa", 
    "msg": "aaa"
}
ok: [test1] => (item=bbb) => {
    "item": "bbb", 
    "msg": "bbb"
}

PLAY RECAP ****************************************************************************
test1                      : ok=1    changed=0    unreachable=0    failed=0 

当有多个变量循环时

---
- hosts: test1
  gather_facts: false
  tasks:
  - name: 测试循环
    debug:
      msg: "name:{{ item.name}}  age:{{ item.age }}"
    with_items:
      - { name: 'aaa', age: '18' }
      - { name: 'bbb', age: '17' }

执行结果

[root@office playbooks]# ansible-playbook standard_loops.yml 

PLAY [test1] ******************************************************************************************

TASK [测试循环] ******************************************************************************************
ok: [test1] => (item={u'age': u'18', u'name': u'aaa'}) => {
    "item": {
        "age": "18", 
        "name": "aaa"
    }, 
    "msg": "name:aaa  age:18"
}
ok: [test1] => (item={u'age': u'17', u'name': u'bbb'}) => {
    "item": {
        "age": "17", 
        "name": "bbb"
    }, 
    "msg": "name:bbb  age:17"
}}

PLAY RECAP ******************************************************************************************
test1                      : ok=1    changed=0    unreachable=0    failed=0 

猜你喜欢

转载自blog.csdn.net/weixin_37038498/article/details/75010532