??????????????
Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 173

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 174

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 175

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 176

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 177

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 178
ó àUdac@`s`ddlmZmZmZeZddlZddlmZm Z m Z ddl m Z m Z mZddlmZmZmZmZddlmZddlmZddlmZdd lmZdd lmZdd lmZdd l m!Z!dd l"m#Z#ddl$m%Z%ddl&m'Z'ddgZ(d„Z)deee!efd„ƒYZ*dS(i(tabsolute_importtdivisiontprint_functionN(t AnsibleErrortAnsibleParserErrortAnsibleAssertionError(t iteritemst binary_typet text_type(t ContainertMappingtSettSequence(tFieldAttribute(tBase(tCollectionSearch(t Conditional(tload_list_of_blocks(t RoleMetadata(tTaggable(tadd_all_plugin_dirs(tAnsibleCollectionLoader(t combine_varstRolet hash_paramscC`s>t|tƒr1t|ttfƒ r1t|tƒr¬yt|jƒƒ}Wq-tk r¨tƒ}x3|jƒD]%\}}|j |t |ƒfƒqpWt|ƒ}q-Xnt|t t fƒr!yt|ƒ}Wq-tk rtƒ}x!|D]}|j t |ƒƒqñWt|ƒ}q-Xn t|ƒ}|St|fƒS(sÊ Construct a data structure of parameters that is hashable. This requires changing any mutable data structures into immutable ones. We chose a frozenset because role parameters have to be unique. .. warning:: this does not handle unhashable scalars. Two things mitigate that limitation: 1) There shouldn't be any unhashable scalars specified in the yaml 2) Our only choice would be to return an error anyway. ( t isinstanceR RRR t frozensettitemst TypeErrortsettaddRR R (tparamst new_paramstktv((sB/usr/lib/python2.7/site-packages/ansible/playbook/role/__init__.pyR/s(%      cB`s+eZeddƒZeddƒZdded„Zd„Ze d„Z e dded„ƒZ dd„Z ded„Zd „Zd „Zd „Zdd „Zdd „Zdd„Zde d„Zd„Zd„Zd„Zdd„Zd„Zdd„Ze d„Ze d„Zd„ZRS(tisatstringtboolcC`sÝd|_d|_d|_tƒ|_d|_d|_||_g|_ g|_ g|_ g|_ d|_ tƒ|_tƒ|_tƒ|_tƒ|_|dkr´i}n||_||_tt|ƒjƒdS(N(tNonet _role_namet _role_patht_role_collectiontdictt _role_paramst_loadert _metadatat_playt_parentst _dependenciest _task_blockst_handler_blockst_compiled_handler_blockst _default_varst _role_varst _had_task_runt _completedt _from_filest from_includetsuperRt__init__(tselftplayt from_filesR9((sB/usr/lib/python2.7/site-packages/ansible/playbook/role/__init__.pyR;ds*                    cC`s |jƒS(N(tget_name(R<((sB/usr/lib/python2.7/site-packages/ansible/playbook/role/__init__.pyt__repr__€scC`s0|r)djd„|j|jfDƒƒS|jS(Nt.cs`s|]}|r|VqdS(N((t.0tx((sB/usr/lib/python2.7/site-packages/ansible/playbook/role/__init__.pys …s(tjoinR)R'(R<tinclude_role_fqcn((sB/usr/lib/python2.7/site-packages/ansible/playbook/role/__init__.pyR?ƒs#c C`s·|dkri}nyu|jƒ}|jdk rC|j|dtvarsR9R=t parent_rolesvA recursion loop was detected with the roles specified. Make sure child roles do not have dependencies on parent rolestobj(R&tget_role_paramsRFRGRHRR?t ROLE_CACHERt add_parentRt_load_role_dataR*t RuntimeErrorRt_ds( t role_includeR=RIR>R9Rt hashed_paramstentrytrole_objtr((sB/usr/lib/python2.7/site-packages/ansible/playbook/role/__init__.pytloadˆs:        &    c `s(|jˆ_|jƒˆ_|jˆ_|jƒˆ_|jƒˆ_|j ƒˆ_ |rjˆj |ƒnxgt ˆj ƒD]V\}}|dkr¼ˆjˆj||j|ƒˆj|õssansible.builtinsansible.legacyttasksR=trolesBThe tasks/main.yml file for role '%s' must contain a list of tasksRJtorig_excthandlerst use_handlerssEThe handlers/main.yml file for role '%s' must contain a list of tasks(swhenstags(+RaR't get_role_pathR(R)RKR+tget_variable_managert_variable_managert get_loaderR,RMRt _valid_attrst _extend_valuet _attributest_load_role_yamlR8tgettTrueR5R&R*RRR4RRVR-t_load_dependenciesR0R^tinsertRtdefault_collectionRtextendtappendRR.R1tAssertionErrorR2( R<RQRIt attr_namet_tmetadataRqtdefault_append_collectiont task_datatet handler_data((R<sB/usr/lib/python2.7/site-packages/ansible/playbook/role/__init__.pyRN¹sr    ***      ) !4!'c C`s!tjj|j|ƒ}|jj|ƒr|jj|ƒrdddg}|dkrmd}|jdƒn|}|j ddƒ|jj ||||ƒ}|rõi}xD|D]<} |jj | ƒ} | rç|rçt || ƒ}q±| }q±W|S|dk rt d||fƒ‚qndS(Ns.ymls.yamls.jsonRWtis,Could not find specified file in role: %s/%s(tostpathRDR(R,t path_existst is_directoryR&RsRptfind_vars_filestload_from_fileRR( R<tsubdirRWRXt file_patht extensionst_maint found_filestdatatfoundtnew_data((sB/usr/lib/python2.7/site-packages/ansible/playbook/role/__init__.pyRls($     cC`sXg}|jrTxB|jjD]1}tj|d|jd|ƒ}|j|ƒqWn|S(sr Recursively loads role dependencies from the metadata list of dependencies, if it exists R=RI(R-t dependenciesRRVR.Rs(R<tdepsRQRU((sB/usr/lib/python2.7/site-packages/ansible/playbook/role/__init__.pyRo+s  cC`sAt|tƒstƒ‚n||jkr=|jj|ƒndS(s/ adds a role to the list of this roles parents N(RRRR/Rs(R<RI((sB/usr/lib/python2.7/site-packages/ansible/playbook/role/__init__.pyRM;s cC`s|jS(N(R/(R<((sB/usr/lib/python2.7/site-packages/ansible/playbook/role/__init__.pyt get_parentsCscC`s|dkrgn|}tƒ}x)|jƒD]}t||jƒƒ}q.W|ryx#|D]}t||jƒ}qZWnt||jƒ}|S(N(R&R*tget_all_dependenciesRtget_default_varsR4(R<t dep_chaint default_varstdeptparent((sB/usr/lib/python2.7/site-packages/ansible/playbook/role/__init__.pyRFs  cC`sQ|dkrgn|}tƒ}|rMx#|D]}t||jƒ}q.Wn|S(N(R&R*RR5(R<Rtinherited_varsR“((sB/usr/lib/python2.7/site-packages/ansible/playbook/role/__init__.pytget_inherited_varsRs   cC`s`|dkrgn|}i}|rJx#|D]}t||jƒ}q+Wnt||jƒ}|S(N(R&RR+(R<RRR“((sB/usr/lib/python2.7/site-packages/ansible/playbook/role/__init__.pyRK\s cC`s¥|dkrgn|}|j|ƒ}x/|jƒD]!}t||jd|ƒƒ}q4Wt||jƒ}t||jƒ}|r¡t||jd|ƒƒ}n|S(Ntinclude_paramsR(R&R•RŽRtget_varsRHR5RK(R<RR–tall_varsR’((sB/usr/lib/python2.7/site-packages/ansible/playbook/role/__init__.pyR—fscC`s|jS(N(R0(R<((sB/usr/lib/python2.7/site-packages/ansible/playbook/role/__init__.pytget_direct_dependenciesuscC`sRg}xE|jƒD]7}x!|jƒD]}|j|ƒq&W|j|ƒqW|S(s§ Returns a list of all deps, built recursively from all child dependencies, in the proper order in which they should be executed or evaluated. (R™RŽRs(R<t child_depsR’t child_dep((sB/usr/lib/python2.7/site-packages/ansible/playbook/role/__init__.pyRŽxs cC`s|jS(N(R1(R<((sB/usr/lib/python2.7/site-packages/ansible/playbook/role/__init__.pytget_task_blocks‡sc C`s¾|jr|jSg|_}|dkr2g}n||g}x9|jƒD]+}|jd|d|ƒ}|j|ƒqLWx<|jD]1}|jƒ}||_||_|j |ƒq…W|S(NR=R( R3R&R™tget_handler_blocksRrR2tcopyt _dep_chainR.Rs( R<R=Rt block_listt new_dep_chainR’t dep_blockst task_blocktnew_task_block((sB/usr/lib/python2.7/site-packages/ansible/playbook/role/__init__.pyRŠs        cC`s|j|jko|jj S(ss Returns true if this role has been iterated over completely and at least one task was run (tnameR7R-tallow_duplicates(R<thost((sB/usr/lib/python2.7/site-packages/ansible/playbook/role/__init__.pythas_run¦sc C`sÞg}|dkrg}n||g}|jƒ}x3|D]+}|jd|d|ƒ}|j|ƒq;Wxmt|jƒD]\\}} | jƒ} || _|| _|t |jƒdkrÉt | _ n|j | ƒqzW|S(s§ Returns the task list for this role, which is created by first recursively compiling the tasks for all direct dependencies, and then adding on the tasks for this role. The role compile() also remembers and saves the dependency chain with each task, so tasks know by which route they were found, and can correctly take their parent's tags/conditionals into account. R=RiN( R&R™tcompileRrt enumerateR1RžRŸR.tlenRnt_eorRs( R<R=RR R¡RŒR’R¢tidxR£R¤((sB/usr/lib/python2.7/site-packages/ansible/playbook/role/__init__.pyR©®s          cC`stt|ƒjƒ}|j|d<|j|d<|j|d<|j|d<|j|d<|jj ƒ|d<|j j ƒ|d<|j r›|j jƒ|ds$ "  0