Anons79 Mini Shell

Directory : /proc/self/root/lib/python2.7/site-packages/ansible/config/
Upload File :
Current File : //proc/self/root/lib/python2.7/site-packages/ansible/config/manager.pyo

�
�Udac@`s2ddlmZmZmZeZddlZddlZddlZddl	Zddl
Z
ddlZddlZddl
Z
ddlmZddlmZyddlmZWn!ek
r�ddlmZnXddlmZddlmZmZdd	lmZmZmZdd
lm Z ddl!m"Z"m#Z#ddl$m%Z%dd
l&m'Z'ddl(m)Z)ddl*m+Z+ddl,m-Z-ddl.m/Z/m0Z0m1Z1edd�Z2edd�Z3id d6Z4d�Z5dd�Z7dd�Z8d�Z9d�Z:dd�Z;de<fd��YZ=dS(!i(tabsolute_importtdivisiontprint_functionN(t
namedtuple(tload(tCSafeLoader(t
SafeLoader(t
ConfigData(tAnsibleOptionsErrortAnsibleError(tto_texttto_bytest	to_native(tSequence(tPY3tstring_types(tconfigparser(tboolean(tunquote(tAnsibleVaultEncryptedUnicode(t	py3compat(tcleanup_tmp_filet
makedirs_safetunfrackpathtPlugins	name typetSettingsname value origin typet_termstlookupcC`sFd}|r4|d|7}|r4|d|7}q4n|d|7}|S(s& construct entry for requested config tsplugin_type: %s splugin: %s ssetting: %s ((tplugin_typetplugin_nametconfigtentry((s:/usr/lib/python2.7/site-packages/ansible/config/manager.pyt
_get_entry+scC`s�d}d}|rEtjj|�rEtjjt|��rE|}n|rZ|j�}n|dk	r�|d kr�t|dt�}n
|d!kr�t	|�}n�|dkr�t
|�}n�|dkrt|t�rg|j
d	�D]}|j�^q�}q�t|t�s�d}q�nv|d
krW|dkr?d}n|dk	r�d}q�n=|dkr�t|t�r�t|d
|�}q�d}n|d"kr)t|t�r t|d
|�}tjj|�s�t|d�ndtj�}tjd|d|�}tjt|dt�q�d}nk|dkr�t|t�rY|j
tj�}nt|t�r�g|D]}t|d
|�^qo}q�d}n�|dkrt|t�r�g|j
d	�D]}|j�^q�}nt|t�rg|D]}t|d
|�^q�}q�d}nu|d#krdt|ttf�r[tt|dd��}q�d}n0t|ttf�r�tt|dd��}n|r�td|t|�f��q�nt|dddd�S($s return a configuration variable with casting
    :arg value: The value to ensure correct typing of
    :kwarg value_type: The type of the value.  This can be any of the following strings:
        :boolean: sets the value to a True or False value
        :bool: Same as 'boolean'
        :integer: Sets the value to an integer or raises a ValueType error
        :int: Same as 'integer'
        :float: Sets the value to a float or raises a ValueType error
        :list: Treats the value as a comma separated list.  Split the value
            and return it as a python list.
        :none: Sets the value to None
        :path: Expands any environment variables and tilde's in the value.
        :tmppath: Create a unique temporary directory inside of the directory
            specified by value and return its path.
        :temppath: Same as 'tmppath'
        :tmp: Same as 'tmppath'
        :pathlist: Treat the value as a typical PATH string.  (On POSIX, this
            means colon separated strings.)  Split the value and then expand
            each part for environment variables and tildes.
        :pathspec: Treat the value as a PATH string. Expands any environment variables
            tildes's in the value.
        :str: Sets the value to string types.
        :string: Same as 'str'
    RRtbooltstricttintegertinttfloattlistt,tnonetNonetpathtbasedirttmpttemppathttmppathi�sansible-local-%stprefixtdirtwarntpathspectpathlisttstrtstringterrorstsurrogate_or_stricts"Invalid type provided for "%s": %st	nonstringtpassthruN(sbooleansbool(R$sint(R-R.R/(sstrsstring(R*tosR+tisabstexistsRtlowerRtFalseR%R&t
isinstanceRtsplittstripR
tresolve_pathRtgetpidttempfiletmkdtemptatexittregisterRtTruetpathsepRRR
t
ValueErrorR(tvaluet
value_typetoriginterrmsgR,txR0((s:/usr/lib/python2.7/site-packages/ansible/config/manager.pytensure_type7sr0	+			(	+(		"cC`s=d|kr'|jdtj��}nt|dtd|�S(s& resolve relative or 'variable' paths s{{CWD}}tfollowR,(treplaceR;tgetcwdRR?(R+R,((s:/usr/lib/python2.7/site-packages/ansible/config/manager.pyRC�scC`sud}|dk	rqtjj|�d}|d	kr=d}qq|d
krRd}qqtd|t|�f��n|S(Ni����s.inis.cfgtinis.yamls.ymltyamls3Unsupported configuration file extension for %s: %s(s.inis.cfg(s.yamls.yml(R*R;R+tsplitextRR(tcfiletftypetext((s:/usr/lib/python2.7/site-packages/ansible/config/manager.pytget_config_type�s		cC`sad}|dk	r]y4|j|jdd�|jdd�dt�}Wq]tk
rYq]Xn|S(s+ returns the value of last ini entry found tsectiontdefaultstkeyRtrawN(R*tgetRIt	Exception(tpR RL((s:/usr/lib/python2.7/site-packages/ansible/config/manager.pytget_ini_config_value�s4
c
C`s�|d	krt�}nt}g}tjd|�}||k	r�t|dt�}tjjt	|��r�tjj
|d�}n|j|�nt}y{tj�}tj
|�}tjj
|d�}|jt
j@r�tjj|�rt}qn|jt|dd��Wntk
r(nX|jtddt��|jd�xK|D]=}t	|�}	tjj|	�rVtj|	tj�rVPqVqVWd	}||kr�|r�|jdt|��n|S(
sO Load INI Config File order(first found is used): ENV, CWD, HOME, /etc/ansible tANSIBLE_CONFIGRRsansible.cfgR7R8s~/.ansible.cfgs/etc/ansible/ansible.cfgu�Ansible is being run in a world writable directory (%s), ignoring it as an ansible.cfg source. For more information see https://docs.ansible.com/ansible/devel/reference_appendices/config.html#cfg-in-world-writable-dirN(R*tsettobjectR;tgetenvRR?R+tisdirRtjointappendRTtstattst_modetS_IWOTHR=RIR
tOSErrortaccesstR_OKtadd(
twarningstSENTINELtpotential_pathst
path_from_envtwarn_cmd_publictcwdtpermstcwd_cfgR+tb_path((s:/usr/lib/python2.7/site-packages/ansible/config/manager.pytfind_ini_config_file�s@


'	t
ConfigManagercB`s�eZgZe�Zddd�Zd�Zdd�Zd�Z	dddd�Z
d�Zddd�Zddd�Z
d�Zddddddd	�Zddddddd
�Zd�Zd�Zddd
�ZRS(cC`s�i|_i|_i|_||_t�|_|j|pOdtjj	t
��|_|jdkr|t|j
�|_n|jr�|j�n|j�y|j�Wn?tk
r�}tjjdt|�j|f�i|_nXdS(Ns%s/base.ymls/Could not load module_defaults_groups: %s: %s

(t
_base_defst_pluginst_parserst_config_fileRtdatat_read_config_yaml_fileR;R+tdirnamet__file__R*R{tWARNINGSt_parse_config_filetupdate_config_datatupdate_module_defaults_groupsRatsyststderrtwritettypet__name__tmodule_defaults_groups(tselft	conf_filet	defs_filete((s:/usr/lib/python2.7/site-packages/ansible/config/manager.pyt__init__s 				(	

#cC`sit|�}tjj|�rOt|d��}t|dt�pEiSWdQXntdt|���dS(NtrbtLoaders4Missing base YAML definition file (bad install?): %s(	RR;R+R=topent	yaml_loadRR	R(R�tyml_filet
config_def((s:/usr/lib/python2.7/site-packages/ansible/config/manager.pyR�+sc	C`sp|dkr|j}nt|�}|dk	rl|dkrSi}trUd|d<ntj|�|j|<tt|�d��U}yt	|j
�dd�}Wn/tk
r�}td|t
|�f��nXWdQXyDtr�|j|j|�n#tj|�}|j|j|�Wqitjk
rO}td	|t
|�f��qiXqltd
t
|���ndS(s1 return flat configuration settings from file(s) RUt;tinline_comment_prefixesR�R7R8sNError reading config file(%s) because the config file was not utf8 encoded: %sNs"Error reading config file (%s): %ss'Unsupported configuration file type: %s(R�(R*R�R[RRtConfigParserRR�RR
treadtUnicodeErrorRRtread_stringtiotStringIOtreadfptError(R�RXRYtkwargstftcfg_textR�tcfg_file((s:/usr/lib/python2.7/site-packages/ansible/config/manager.pyR�5s,
&#cC`sdS(sL Load YAML Config Files in order, check merge flags, keep origin of settingsN((R�((s:/usr/lib/python2.7/site-packages/ansible/config/manager.pyt_find_yaml_config_filesWsc	
C`s^i}|j||�}x?|D]7}|j|d|d|d|d|d|�||<qW|S(NRRtkeyst	variablestdirect(tget_configuration_definitionstget_config_value(	R�RtnameR�R�R�toptionstdefstoption((s:/usr/lib/python2.7/site-packages/ansible/config/manager.pytget_plugin_options[s

5cC`slg}x_|j||�j�D]E}d|kr|drx&|dD]}|j|d�qFWqqW|S(NtvarsR�(R�tvaluesRj(R�RR�tpvarstpdeft	var_entry((s:/usr/lib/python2.7/site-packages/ansible/config/manager.pytget_plugin_varsdscC`s�i}|dkr*|jj|d�}n]|dkrZ|jj|i�j|d�}n-|jj|i�j|i�j|d�}|S(N(R*R}R`R~(R�R�RRtret((s:/usr/lib/python2.7/site-packages/ansible/config/manager.pytget_configuration_definitionms$-cC`sgi}|dkr|j}nE|dkrB|jj|i�}n!|jj|i�j|i�}|S(sP just list the possible settings, either base or for specific plugins or plugin N(R*R}R~R`(R�RR�R�((s:/usr/lib/python2.7/site-packages/ansible/config/manager.pyR�ys!cC`s�d}d}x�|D]�}|jd�}y|j|d�}Wn3tk
rs|jjdjt|���qnX|dk	rt|t�r�t|dd�}n|}|}d|kr�|j	j
|d|df�q�qqW||fS(s( repeat code for value entry assignment R�uCvalue for config entry {0} contains invalid characters, ignoring...R7R8t
deprecatedN(R*R`tUnicodeEncodeErrorR�RqtformatR
R@Rt
DEPRECATEDRj(R�t	containert
entry_listRLRNR R�t
temp_value((s:/usr/lib/python2.7/site-packages/ansible/config/manager.pyt
_loop_entries�s"

(cC`s�y=|j|d|d|d|d|d|d|�\}}	WnHtk
rS�n5tk
r�}
td|t|
�fd|
��nX|S(	s	 wrapper RXRRR�R�R�s*Unhandled exception when retrieving %s:
%storig_exc(tget_config_value_and_originR	RaR(R�RRXRRR�R�R�RLt_dropR�((s:/usr/lib/python2.7/site-packages/ansible/config/manager.pyR��s
&cC`s7|dkr|j}nd}d}	|j||�}
||
kr|
|jdg�}g}|r�g|D]}
|
|krk||
^qk}n|r�||kr�||}d}	nT|r�|r�|d}d}	n5|r|
|jd�r|j||
|d�\}}	d|	}	n|dkr�|r�||krK||}|}n:|r�x1|D]&}
|
|krX||
}|
}PqXqXWn|dk	r�d|}	q�n|dkr�|
|jd�r�|jtj|
|d�\}}	d|	}	n|jj|d�dkr|j|�n|dkrA|dk	rAt	|�}|rA|
|j|�rA|d	kr&y�x�|
|d	D]r}t
|j||�}|dk	rv|}|}	d
|kr�|jjd|d|d
f|d
f�q�qvqvWWq;t
k
r"}tjjd|t|�f�q;Xq>|dkr>|}	q>qAn|dkr	|
|jdt�r�|s�|tj|i�krtdtt|||����qq	|
|jd�}d}	|dkr	t|t�r	|jd�r	|jd�r	||	fSny&t||
|jd�d|	�}Wn�tk
r�}|	jd�r�|dkr�d}	t|
|jd�|
|jd�d|	�}q�tdtt|||��t|�f��nXd
|
|kr-|	dkr-|jj||
|jd
�f�q-n"tdtt|||����||	fS(sY Given a config key figure out the actual value and report on the origin of the settings taliasestDirectiR�svar: %sskeyword: %stenvsenv: %sRUR�s[%s]%sR\R^s%Error while loading ini config %s: %sRVtrequireds5No setting was provided for required configuration %stdefaults{{s}}R�RNsenv:Rs,Invalid type for configuration option %s: %ss6Requested entry (%s) was not defined in configuration.N(R*R�R�R`R�RtenvironRR�R[RcR�RjRaR�R�R�RR?t
INTERNAL_DEFSR	R!R@Rt
startswithtendswithRQRKR(R�RRXRRR�R�R�RLRNR�R�tdirect_aliasestaliastkeywordRYt	ini_entryR�R�((s:/usr/lib/python2.7/site-packages/ansible/config/manager.pyR��s�,
	
	 

	

#
:'"9
&2,)"cC`s4||jkri|j|<n||j||<dS(N(R~(R�RR�R�((s:/usr/lib/python2.7/site-packages/ansible/config/manager.pyt+initialize_plugin_configuration_definitionsscC`su|jdtjjtjjt���}|jd�d	kr\td|jd���n|jdi�|_dS(
Ns%s/module_defaults.ymltversiont1s1.0ig�?sZmodule_defaults.yml has an invalid version "%s" for configuration. Could be a bad install.t	groupings(R�s1.0ig�?(	R�R;R+RiR�R�R`R	R�(R�tdefaults_config((s:/usr/lib/python2.7/site-packages/ansible/config/manager.pyR� s
%c	C`sq|d
kr|j}n|d
kr0|j}nt|t�s^tdt|�|f��n|jjt	d|dd��d
}x�|D]�}t||t�s�tdt
|�t||�f��ny|j||�\}}WnOtk
r9}t
jjdtj��td|t
|�fd|��nX|jjt	|||||jd	d���q�Wd
S(s really: update constants s0Invalid configuration definition type: %s for %stCONFIG_FILERR6s1Invalid configuration definition '%s': type is %ssUnhandled error:
 %s

s%Invalid settings supplied for %s: %s
R�R�N(R*R}R�R@tdictRR�R�tupdate_settingRRR�RaR�R�R�t	tracebackt
format_excR	R`(R�R�t
configfileRNRRLR�((s:/usr/lib/python2.7/site-packages/ansible/config/manager.pyR�(s"
)
&N(R�t
__module__R�ReR�R*R�R�R�R�R�R�R�R�R�R�R�R�R�R�(((s:/usr/lib/python2.7/site-packages/ansible/config/manager.pyR|	s 		
"				
	m		(R(>t
__future__RRRR�t
__metaclass__RGR�R;tos.pathR�RkRER�tcollectionsRRVRR�RRtImportErrortansible.config.dataRtansible.errorsRR	tansible.module_utils._textR
RRt/ansible.module_utils.common._collections_compatR
tansible.module_utils.sixRRtansible.module_utils.six.movesRt)ansible.module_utils.parsing.convert_boolRtansible.parsing.quotingRtansible.parsing.yaml.objectsRt
ansible.utilsRtansible.utils.pathRRRRRR�R!R*RQRCR[RcR{RfR|(((s:/usr/lib/python2.7/site-packages/ansible/config/manager.pyt<module>sH

	m			A

Anons79 File Manager Version 1.0, Coded By Anons79
Email: [email protected]