You could use include_role, according to the documentaion:
- Loads and executes a role as a task dynamically. This frees roles from the roles: directive and allows them to be treated more as tasks.
- Unlike import_role, most keywords, including loops and conditionals, apply to this statement.
- This module is also supported for Windows targets.
- name: 'Include role'
include_role:
name: '{{ roles}}'