ó 'KXc@s(ddlmZddlZddlZddlZddlmZddlmZddlm Z ej e ƒZ dej fd„ƒYZdefd „ƒYZd „Zd „Zed „Zd „Zd„Zd„Zdefd„ƒYZeejffeejejfffZd„ZdS(iÿÿÿÿ(tminidomN(tlog(tsources(tutilt DataSourceOVFcBs5eZd„Zd„Zd„Zd„Zd„ZRS(cCs\tjj||||ƒd|_tjj|jdƒ|_d|_ i|_ d|_ dS(Ntovft/sfile://(Rsfile://( Rt DataSourcet__init__tNonetseedtostpathtjointseed_dirt environmenttcfgtsupported_seed_starts(tselftsys_cfgtdistrotpaths((sL/opt/freeware/lib/python2.7/site-packages/cloudinit/sources/DataSourceOVF.pyR%s    cCs#tjj|ƒ}d||jfS(Ns %s [seed=%s](RRt__str__R (Rtroot((sL/opt/freeware/lib/python2.7/site-packages/cloudinit/sources/DataSourceOVF.pyR-scCs)g}i}d}idd6}t|jjƒ\}}|r†tjj|jj|ƒ}t|ƒ\}}}||_|j|ƒn‡it d6t d6} d} x6| j ƒD](\} } | ƒ\}} } |r­Pq­q­W|r t|ƒ\}}}||_|j| ƒnt |ƒdkr#tSd|krã|drã|d}t}x*|jD]}|j|ƒrS|}PqSqSW|s“tjd||ƒtStj|d dƒ\}}tjd |ƒtj||gƒ}|j|ƒntj||gƒ}d j|ƒ|_||_||_||_tS( Nts iid-dsovfs instance-idtisos vmware-guestditseedfroms Seed from %s not supported by %sttimeoutsUsing seeded cache data from %st,(t get_ovf_envRRR R R tread_ovf_environmentRtappendttransport_iso9660ttransport_vmware_guestdR t iteritemstlentFalseRt startswithtLOGtdebugRt read_seededt mergemanydictR tmetadatat userdata_rawRtTrue(RtfoundtmdtudtdefaultstseedfiletcontentsR Rtnptnamet transfunct_devt_fnameRt seedfoundtprototmd_seed((sL/opt/freeware/lib/python2.7/site-packages/cloudinit/sources/DataSourceOVF.pytget_data1sZ           cCs>d|jkrgS|jd}t|tƒr3|S|gSdS(Ns public-keys(R*t isinstancetlist(Rtpks((sL/opt/freeware/lib/python2.7/site-packages/cloudinit/sources/DataSourceOVF.pytget_public_ssh_keysms  cCs|jS(N(R(R((sL/opt/freeware/lib/python2.7/site-packages/cloudinit/sources/DataSourceOVF.pytget_config_objys(t__name__t __module__RRR;R?R@(((sL/opt/freeware/lib/python2.7/site-packages/cloudinit/sources/DataSourceOVF.pyR$s    < tDataSourceOVFNetcBseZd„ZRS(cCs>tj||||ƒtjj|jdƒ|_d|_dS(Nsovf-netshttp://shttps://sftp://(shttp://shttps://sftp://(RRR R R RR(RRRR((sL/opt/freeware/lib/python2.7/site-packages/cloudinit/sources/DataSourceOVF.pyR~s(RARBR(((sL/opt/freeware/lib/python2.7/site-packages/cloudinit/sources/DataSourceOVF.pyRC}sc CsÜt|ƒ}i}i}d}dg}ddddg}x“|jƒD]…\}}|dkrgd}n||kr€||| sisNo 'PropertySection'scSs |jdkS(NtProperty(Rz(R{((sL/opt/freeware/lib/python2.7/site-packages/cloudinit/sources/DataSourceOVF.pyR|stkeytvalue( Rt parseStringtdocumentElementRztXmlErrorRqRwR#t attributestgetNamedItemNSR( R2tdomtenvNsURIt propSectionsRIt propElemstelemR~RM((sL/opt/freeware/lib/python2.7/site-packages/cloudinit/sources/DataSourceOVF.pyRFþs$     R‚cBseZRS((RARB(((sL/opt/freeware/lib/python2.7/site-packages/cloudinit/sources/DataSourceOVF.pyR‚scCstj|tƒS(N(Rtlist_from_dependst datasources(tdepends((sL/opt/freeware/lib/python2.7/site-packages/cloudinit/sources/DataSourceOVF.pytget_datasource_list)s(txml.domRRGR R\t cloudinitRtloggingRRt getLoggerRAR&RRRCRRR,R R!RwRFt ExceptionR‚tDEP_FILESYSTEMt DEP_NETWORKR‹R(((sL/opt/freeware/lib/python2.7/site-packages/cloudinit/sources/DataSourceOVF.pyts&   Y   9