a )g @s~ddlmZmZmZeZddlmZmZddl m Z ddl m Z ddl mZddlmZddlmZdgZGd ddeZd S) )absolute_importdivisionprint_function) AnsibleErrorAnsibleParserError) string_types)AnsibleBaseYAMLObject)FieldAttribute)RoleDefinition) to_native RoleIncludecsFeZdZdZeddZedddZd fdd Zed d d Z Z S)r zt A derivative of RoleDefinition, used by playbook code when a role is included for execution in a play. string)isaboolF)rdefaultNcstt|j|||||ddS)Nplay role_basedirvariable_managerloadercollection_list)superr __init__)selfrrrrr __class__A/usr/lib/python3.9/site-packages/ansible/playbook/role/include.pyr+szRoleInclude.__init__cCsnt|ts.t|ts.t|ts.tdt|t|trLd|vrLtd|t|||||d}|j|||dS)NzInvalid role definition: %s,z&Invalid old style role requirement: %sr)rr) isinstancerdictrrr rr Z load_data)datarZcurrent_role_pathZ parent_rolerrrZrirrrload/s  zRoleInclude.load)NNNNN)NNNNN) __name__ __module__ __qualname____doc__r Z delegate_toZdelegate_factsr staticmethodr" __classcell__rrrrr !s   N)Z __future__rrrtypeZ __metaclass__Zansible.errorsrrZansible.module_utils.sixrZansible.parsing.yaml.objectsrZansible.playbook.attributer Z ansible.playbook.role.definitionr Zansible.module_utils._textr __all__r rrrrs