a )g @spdZddlmZmZmZeZddlZddlm Z ddl m Z ddl mZddlmZddZGd d d eZdS) z9 This manages remote shared Ansible objects, mainly roles)absolute_importdivisionprint_functionN)context)to_bytes) yaml_loadcCsVtjtjtdd}tt|ddd}t|WdS1sH0YdS)Ndatazcollections_galaxy_meta.ymlZsurrogate_or_strict)errorsrb)ospathjoindirname__file__openrr) meta_pathZ galaxy_objr;/usr/lib/python3.9/site-packages/ansible/galaxy/__init__.py get_collections_galaxy_meta_info%src@s4eZdZdZddZeddZddZdd Zd S) Galaxyz Keeps global galaxy info cCsntjdtj}||_i|_tj t \}}tjdd}|dkrXtj |tjd}tj |d||_ dS)N roles_pathZ role_typedefaulttyper) rZCLIARGSgetCZDEFAULT_ROLES_PATHZ roles_pathsrolesr r splitrr DATA_PATH)selfrZthis_dirZ this_filenameZ type_pathrrr__init__.szGalaxy.__init__cCs|jSN)r)rrrrdefault_role_skeleton_path@sz!Galaxy.default_role_skeleton_pathcCs||j|j<dSr )rname)rZrolerrradd_roleDszGalaxy.add_rolecCs |j|=dSr )r)rZ role_namerrr remove_roleGszGalaxy.remove_roleN) __name__ __module__ __qualname____doc__rpropertyr!r#r$rrrrr+s  r)r(Z __future__rrrrZ __metaclass__r Zansible.constantsZ constantsrZansiblerZansible.module_utils._textrZ ansible.module_utils.common.yamlrrobjectrrrrrs