One loop over multiple Ansible tasks

后端 未结 3 1509
面向向阳花
面向向阳花 2020-12-29 03:49

I\'ve created an Ansible playbook that creates a cloud instance and then installs some programs on the instance. I want to run this playbook multiple times (without using a

3条回答
  •  春和景丽
    2020-12-29 03:58

    An update:

    In 2.0 you are able to use with_ loops and task includes (but not playbook includes), this adds the ability to loop over the set of tasks in one shot. There are a couple of things that you need to keep in mind, a included task that has it’s own with_ loop will overwrite the value of the special item variable. So if you want access to both the include’s item and the current task’s item you should use set_fact to create a alias to the outer one.:

    - include_tasks: test.yml
      with_items:
        - 1
        - 2
        - 3
    

    in test.yml:

    - set_fact: outer_loop="{{item}}"
    - debug: msg="outer item={{outer_loop}} inner item={{item}}"
      with_items:
        - a
        - b
        - c
    

    Source: Ansible Docs

提交回复
热议问题