##### SUMMARY
include_role parameter *public* description: "... vars and defaults are exposed to the playbook." The variables are not exposed to other plays in a playbook.
##### ISSUE TYPE
- Documentation Report

##### COMPONENT NAME

include_role

##### ANSIBLE VERSION

devel

##### CONFIGURATION

No changes. All defaults.

##### OS / ENVIRONMENT

> cat /etc/lsb-release 
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=20.04
DISTRIB_CODENAME=focal
DISTRIB_DESCRIPTION="Ubuntu 20.04.1 LTS"

##### STEPS TO REPRODUCE

https://gist.github.com/vbotka/8a435e917bccc655e08cbd11b43eabd4

##### EXPECTED RESULTS

The documentation says "exposed to the playbook". This evokes the expectation the variables are available to other plays in the playbook.

```paste below
PLAY [two] ***********************************************************************************

TASK [role-two : debug] **********************************************************************
ok: [two] => {
    "variable_one": "Role One Variable"
}

PLAY [one] ***********************************************************************************

TASK [role-two : debug] **********************************************************************
ok: [one] => {
    "variable_one": "Role One Variable"
}
```

##### ACTUAL RESULTS

The variables are not available to other plays in the playbook.

<!--- Paste verbatim command output between quotes -->
```paste below
PLAY [two] ***********************************************************************************

TASK [role-two : debug] **********************************************************************
ok: [two] => {
    "variable_one": "VARIABLE IS NOT DEFINED!"
}

PLAY [one] ***********************************************************************************

TASK [role-two : debug] **********************************************************************
ok: [one] => {
    "variable_one": "VARIABLE IS NOT DEFINED!"
}
```

type: str
    default: main
  vars_from:
    description:
      - File to load from a role's C(vars/) directory.
    type: str
    default: main
  defaults_from:
    description:
      - File to load from a role's C(defaults/) directory.
    type: str
    default: main
  allow_duplicates:
    description:
      - Overrides the role's metadata setting to allow using a role more than once with the same parameters.
    type: bool
    default: yes
  handlers_from:
    description:
      - File to load from a role's C(handlers/) directory.
    type: str
    default: main
    version_added: '2.8'
notes:
  - Handlers are made available to the whole play.
  - Since Ansible 2.7 variables defined in C(vars) and C(defaults) for the role are exposed at playbook parsing time.
    Due to this, these variables will be accessible to roles and tasks executed before the location of the
    M(ansible.builtin.import_role) task.
  - Unlike M(ansible.builtin.include_role) variable exposure is not configurable, and will always be exposed.
seealso: