Ë
    ì‘›hÓ  ã                   ó‚   — d dl Z d dlZd dlmZmZmZ d dlmZ  e j                  e	«      Z
 G d„ dej                  «      Zy)é    N)ÚhandlersÚsubpÚutil)Ú
PER_ALWAYSc                   ó$   — e Zd ZdgZd„ Zd„ Zd„ Zy)ÚBootHookPartHandlerz#cloud-boothookc                 ó¶   — t         j                  j                  | t        «       |j	                  d«      | _        d | _        |r|j                  «       | _        y y )NÚ	boothooks)r   ÚHandlerÚ__init__r   Ú	get_ipathÚboothook_dirÚinstance_idÚget_instance_id)ÚselfÚpathsÚ
datasourceÚ_kwargss       ú>/usr/lib/python3/dist-packages/cloudinit/handlers/boot_hook.pyr   zBootHookPartHandler.__init__   sJ   € Ü×Ñ×!Ñ! $¬
Ô3Ø!ŸO™O¨KÓ8ˆÔØˆÔÙØ)×9Ñ9Ó;ˆDÕð ó    c                 ó<  — t        j                  |«      }t        j                  j	                  | j
                  |«      }t        j                  t        j                  |«      | j                  d   ¬«      }t        j                  ||j                  «       d«       |S )Nr   )ÚprefixiÀ  )r   Úclean_filenameÚosÚpathÚjoinr   Ústrip_prefix_suffixÚdos2unixÚprefixesÚ
write_fileÚlstrip)r   ÚpayloadÚfilenameÚfilepathÚcontentss        r   Ú_write_partzBootHookPartHandler._write_part    sq   € Ü×&Ñ& xÓ0ˆÜ—7‘7—<‘< × 1Ñ 1°8Ó<ˆÜ×+Ñ+ÜM‰M˜'Ó"¨4¯=©=¸Ñ+;ô
ˆô 	‰˜ (§/¡/Ó"3°UÔ;Øˆr   c                 ó¨  — |t         j                  v ry | j                  ||«      }	 | j                  rdt	        | j                  «      ini }t
        j                  d«       t        j                  |g|d¬«       y # t        j                  $ r t        j                  t
        d|«       Y y t        $ r t        j                  t
        d|«       Y y w xY w)NÚINSTANCE_IDzExecuting boothookF)Ú
update_envÚcapturez#Boothooks script %s execution errorz'Boothooks unknown error when running %s)r   ÚCONTENT_SIGNALSr&   r   ÚstrÚLOGÚdebugr   ÚProcessExecutionErrorr   ÚlogexcÚ	Exception)r   ÚdataÚctyper#   r"   Ú	frequencyr$   Úenvs           r   Úhandle_partzBootHookPartHandler.handle_part)   s¶   € Ø”H×,Ñ,Ñ,Øà×#Ñ# G¨XÓ6ˆð	ð ×#Ò#ð ¤ D×$4Ñ$4Ó 5Ñ6àð ô
 I‰IÐ*Ô+ÜI‰Ixj¨S¸%Ö@øÜ×)Ñ)ò 	NÜK‰KœÐBÀHÖMÜò 	ÜK‰KÜÐ>Àöð	ús   §AA; Á;.CÂ+#CÃCN)Ú__name__Ú
__module__Ú__qualname__r   r   r&   r6   © r   r   r   r      s   „ ð "Ð"€Hò<òór   r   )Úloggingr   Ú	cloudinitr   r   r   Úcloudinit.settingsr   Ú	getLoggerr7   r-   r   r   r:   r   r   ú<module>r?      s:   ðó Û 	ç *Ñ *Ý )à€g×Ñ˜Ó!€ô'˜(×*Ñ*õ 'r   