diff --git a/docs/docsite/rst/user_guide/playbooks_reuse_roles.rst b/docs/docsite/rst/user_guide/playbooks_reuse_roles.rst index 90326ab79c9..56093d3da10 100644 --- a/docs/docsite/rst/user_guide/playbooks_reuse_roles.rst +++ b/docs/docsite/rst/user_guide/playbooks_reuse_roles.rst @@ -51,22 +51,23 @@ You can add other YAML files in some directories. For example, you can place pla .. code-block:: yaml # roles/example/tasks/main.yml - - name: install the correct web server for RHEL + - name: Install the correct web server for RHEL import_tasks: redhat.yml when: ansible_facts['os_family']|lower == 'redhat' - - name: install the correct web server for debian + + - name: Install the correct web server for Debian import_tasks: debian.yml when: ansible_facts['os_family']|lower == 'debian' # roles/example/tasks/redhat.yml - - install web server - yum: + - name: Install web server + ansible.builtin.yum: name: "httpd" state: present # roles/example/tasks/debian.yml - - install web server - apt: + - name: Install web server + ansible.builtin.apt: name: "apache2" state: present @@ -174,11 +175,16 @@ To include a role: --- - hosts: webservers tasks: - - debug: + - name: Print a message + ansible.builtin.debug: msg: "this task runs before the example role" - - include_role: + + - name: Include the example role + include_role: name: example - - debug: + + - name: Print a message + ansible.builtin.debug: msg: "this task runs after the example role" You can pass other keywords, including variables and tags, when including roles: @@ -188,7 +194,8 @@ You can pass other keywords, including variables and tags, when including roles: --- - hosts: webservers tasks: - - include_role: + - name: Include the foo_app_instance role + include_role: name: foo_app_instance vars: dir: '/opt/a' @@ -205,7 +212,8 @@ You can conditionally include a role: --- - hosts: webservers tasks: - - include_role: + - name: Include the some_role role + include_role: name: some_role when: "ansible_facts['os_family'] == 'RedHat'" @@ -219,11 +227,16 @@ You can reuse roles statically anywhere in the ``tasks`` section of a play using --- - hosts: webservers tasks: - - debug: + - name: Print a message + ansible.builtin.debug: msg: "before we run our role" - - import_role: + + - name: Import the example role + import_role: name: example - - debug: + + - name: Print a message + ansible.builtin.debug: msg: "after we ran our role" You can pass other keywords, including variables and tags, when importing roles: @@ -233,7 +246,8 @@ You can pass other keywords, including variables and tags, when importing roles: --- - hosts: webservers tasks: - - import_role: + - name: Import the foo_app_instance role + import_role: name: foo_app_instance vars: dir: '/opt/a'