ó 'KXc@soddlZddlZddlmZddlmZdZdgZd„Zddd d „Z d „Z dS( iÿÿÿÿN(tlog(tutils/var/run/reboot-requireds /sbin/rebootcGs.x'|D]}tj||tƒrtSqWtS(N(Rtget_cfg_option_booltFalsetTrue(tcfgtkeystk((s_/opt/freeware/lib/python2.7/site-packages/cloudinit/config/cc_package_update_upgrade_install.pyt_multi_cfg_bool_gets iiicCs tjtƒtjƒ}|}xTtd|ƒD]C}tj|ƒ||9}tjƒ|}|jdt|ƒƒq/Wtjƒ|}tdt|ƒƒ‚dS(Nis,Rebooted, but still running after %s secondss'Reboot did not happen after %s seconds!( Rtsubpt REBOOT_CMDttimetrangetsleeptdebugtintt RuntimeError(Rt wait_attemptst initial_sleeptbackofftstartt wait_timet_itelapsed((s_/opt/freeware/lib/python2.7/site-packages/cloudinit/config/cc_package_update_upgrade_install.pyt _fire_reboot$s    c Cst|ddƒ}t|ddƒ}t|ddƒ}tj|dgƒ}g} |sit|ƒsi|r°y|jjƒWq°tk r¬} tj|dƒ| j| ƒq°Xn|ry|jj d ƒWqtk rü} tj|d ƒ| j| ƒqXnt|ƒrYy|jj |ƒWqYtk rU} tj|d |ƒ| j| ƒqYXnt j j tƒ} |sw|rä|rä| räy+|jd tƒtj|ƒt|ƒWqätk rà} tj|d ƒ| j| ƒqäXnt| ƒr|jdt| ƒƒ| d‚ndS(Nt apt_updatetpackage_updatetpackage_upgradet apt_upgradetapt_reboot_if_requiredtpackage_reboot_if_requiredtpackagessPackage update failedtupgradesPackage upgrade failedsFailed to install packages: %ss)Rebooting after upgrade or install per %ss Requested reboot did not happen!s2%s failed with exceptions, re-raising the last oneiÿÿÿÿ(RRtget_cfg_option_listtlentdistrotupdate_package_sourcest Exceptiontlogexctappendtpackage_commandtinstall_packagestostpathtisfilet REBOOT_FILEtwarntloggingt flushLoggersR( t_nameRtcloudRt_argstupdateR treboot_if_requiredtpkglistterrorstetreboot_fn_exists((s_/opt/freeware/lib/python2.7/site-packages/cloudinit/config/cc_package_update_upgrade_install.pythandle3sJ       ( R*R t cloudinitRR/RR-R RRR:(((s_/opt/freeware/lib/python2.7/site-packages/cloudinit/config/cc_package_update_upgrade_install.pyts