15  ˆÄà „¯ºÂÁÀ?÷ a '¡Dgüµã@sîddlZddlZddlZddlZddlZddlZddlZddlmZm Z m Z m Z ddl m Z ddl mZddl mZddl mZddl mZddl mZdd l mZdd l mZdd l mZdd l mZdd l mZddl mZddl mZddl mZddlmZmZddlmZddl m!Z!ddl"m#Z#ddl$m%Z%ddl&m'Z'ddl(m)Z)ddl*m+Z+m,Z,m-Z-m.Z.e/Z0dZ1dZ2e+e,e-dœZ3ddddd œZ4e 5e6¡Z7d\d"d#„Z8d]d$d%„Z9d&d'„Z:e ;d(¡e7je#d.œd/d0„Z?d1d2„Z@d^d4d5„ZAd_e eBe/fd7œd8d9„ZCd:d;„ZDdœd?d@„ZHeejIe eGe0fdAœdBdC„ZJdDdE„ZKdFdG„ZLdHdI„ZMdJdK„ZNdLdM„ZOejPdNœdOdP„ZQdQdR„ZRdSdT„ZSd`dUdV„ZTdWdX„ZUdYdZ„ZVe6d[k�rêe WeTejXƒ¡dS)aéN)ÚOptionalÚTupleÚCallableÚUnion)Únetinfo)Úsignal_handler)Úsources)Úsocket)Ústages)Ú url_helper)Úutil)Ú performance)Úversion)Úwarnings)Ú reporting)Ú atomic_helper)Ú lifecycle)Úhandlers)Úlog_utilÚloggers)Úread_cfg_paths)Úcc_set_hostname)ÚModules)Úvalidate_cloudconfig_schema)Úlog_with_downgradable_level)Úevents)Ú PER_INSTANCEÚ PER_ALWAYSÚPER_ONCEÚ CLOUD_CONFIGzOCloud-init v. {version} running '{action}' at {timestamp}. Up {uptime} seconds.zcloud_%s_modules)ÚinstanceÚalwaysÚoncez Local Stagez Network Stagez Config Stagez Final Stage)ú init-localÚinitúmodules-configú modules-finalÚcCsV|rtj d|¡tj d¡tj d¡tjtjd�tj d¡tj d¡dS)Nú%s z<------------------------------------------------------------Ú )Úfile)ÚsysÚstderrÚwriteÚ tracebackÚ print_exc©Úmsg©r2ú6/usr/lib/python3.9/site-packages/cloudinit/cmd/main.pyr/Ts   r/cCs&|s t|ƒ}tjd|ddtd�|S)Nr(FT)Zconsoler,Úlog)Úwelcome_formatrZ multi_logÚLOG)Úactionr1r2r2r3Úwelcome^sr8cCstjt ¡t ¡t ¡|d�S)N)rÚuptimeZ timestampr7)ÚWELCOME_MSG_TPLÚformatrÚversion_stringr r9Z time_rfc2822©r7r2r2r3r5es ür5ú Closing stdin)ÚloggercCsft tj ¡¡sZ|dƒttjƒ�&}t | ¡tj ¡¡Wdƒqb1sN0Yn|dƒdS)zj reopen stdin as /dev/null to ensure no side effects logger: a function for logging messages r>Nz"Not closing stdin, stdin is a tty.)ÚosÚisattyr+ÚstdinÚfilenoÚopenÚdevnullÚdup2)r?Úfpr2r2r3Ú close_stdinns  6rHcCs.g}|jr*|jD]}| tj |j¡¡q|S©N)ÚfilesÚappendr@ÚpathÚrealpathÚname)ÚargsZfn_cfgsZfhr2r2r3Ú extract_fns}s  rP)ÚmodscCsvt|}| |¡\}}t|ƒt|ƒ}|dkrXd||f}tj d|¡t |¡gSt dt|ƒt|ƒ¡|SdS)Nrz)No '%s' modules to run under section '%s'r(zRan %s modules with %s failures)ÚMOD_SECTION_TPLZ run_sectionÚlenr+r,r-r6Údebug)rQÚ action_nameÚsectionZfull_section_nameÚ which_ranÚfailuresZtotal_attemptedr1r2r2r3Úrun_module_sectionŠsþ ÿrYcCs| d¡rt | d¡¡dS)Nr)ÚgetrZupdate_configuration)Úcfgr2r2r3Úapply_reporting_cfg�s r\©úcloud-config-urlÚurlcCs@t |¡}|D]}||vr|||fSqtd||fƒ‚dS)Nz!No keys (%s) found in string '%s')r Zkeyval_str_to_dictÚKeyError)ÚcmdlineÚnamesÚdataÚkeyr2r2r3Úparse_cmdline_url¢s  reT)Úreturnc Cs2|durt ¡}zt|ƒ\}}Wnty<tjdfYS0| d¡}|r”tj  |¡r”|rzd||f}tj }|rŒtj}nd||f}tj }||fS|dddd œ}|sª|rºtj }d |d <ntj}d |d <d} d } �zt j fi|¤Ž} d} |  ¡�r´d} t| t jƒ�rHz| t| jt