ansible.builtin.import_playbook – Import a playbook

Note

This module is part of ansible-core and included in all Ansible installations. In most cases, you can use the short module name import_playbook even without specifying the collections: keyword. However, we recommend you use the FQCN for easy linking to the module documentation and to avoid conflicting with other collections that may have the same module name.

New in version 2.4: of ansible.builtin

Synopsis

  • Includes a file with a list of plays to be executed.

  • Files with a list of plays can only be included at the top level.

  • You cannot use this action inside a play.

Parameters

Parameter Choices/Defaults Comments
free-form
string
The name of the imported playbook is specified directly without any other option.

Notes

Note

  • This is a core feature of Ansible, rather than a module, and cannot be overridden like a module.

See Also

See also

ansible.builtin.import_role

The official documentation on the ansible.builtin.import_role module.

ansible.builtin.import_tasks

The official documentation on the ansible.builtin.import_tasks module.

ansible.builtin.include_role

The official documentation on the ansible.builtin.include_role module.

ansible.builtin.include_tasks

The official documentation on the ansible.builtin.include_tasks module.

Including and importing

More information related to including and importing playbooks, roles and tasks.

Examples

- hosts: localhost
  tasks:
    - debug:
        msg: play1

- name: Include a play after another play
  import_playbook: otherplays.yaml

- name: Set variables on an imported playbook
  import_playbook: otherplays.yml
  vars:
    service: httpd

- name: This DOES NOT WORK
  hosts: all
  tasks:
    - debug:
        msg: task1

    - name: This fails because I'm inside a play already
      import_playbook: stuff.yaml

Authors

  • Ansible Core Team (@ansible)