Loads a file with a list of plays or tasks to be executed in the current playbook. Files with a list of plays can only be included at the top level, lists of tasks can only be included where tasks normally run (in play). Before 2.0 all includes were ‘static’, executed at play load time. Since 2.0 task includes are dynamic and behave more like real tasks. This means they can be looped, skipped and use variables from any source. Ansible tries to auto detect this, use the static
directive (new in 2.1) to bypass autodetection.
parameter | required | default | choices | comments |
---|---|---|---|---|
free-form | no | This module allows you to specify the name of the file directly w/o any other options. |
# include a play after another play - hosts: localhost tasks: - debug: msg="play1" - include: otherplays.yml # include task list in play - hosts: all tasks: - debug: msg=task1 - include: stuff.yml - debug: msg=task10 # dyanmic include task list in play - hosts: all tasks: - debug: msg=task1 - include: {{hostvar}}.yml static: no when: hostvar is defined
Note
This is really not a module, though it appears as such, this is a feature of the Ansible Engine, as such it cannot be overridden the same way a module can.
For more information on what this means please read Core Modules
For help in developing on modules, should you be so inclined, please read Community Information & Contributing, developing_test_pr and Developing Modules.
© 2012–2016 Michael DeHaan
© 2016 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/include_module.html