o
    ƒtÖh  ã                
   @   s¬   U d Z ddlZddlmZ ddlmZ ddlmZ ddlm	Z	m
Z
 ddlmZ ddlmZ dd	lmZ d
egedgdœZeed< e e¡Zdededededdf
dd„ZdS )z1Write Files Deferred: Defer writing certain filesé    N)Úutil)ÚCloud)ÚConfig)ÚDEFAULT_DEFERÚwrite_files)Ú
MetaSchema)ÚALL_DISTROS)ÚPER_INSTANCEÚcc_write_files_deferredr   )ÚidÚdistrosÚ	frequencyÚactivate_by_schema_keysÚmetaÚnameÚcfgÚcloudÚargsÚreturnc                 C   sP   |  dg ¡}dd„ |D ƒ}|st d| ¡ d S t |j¡}t| ||jj|ƒ d S )Nr   c                 S   s   g | ]}t  |d t¡r|‘qS )Údefer)r   Úget_cfg_option_boolr   )Ú.0Úf© r   úJ/usr/lib/python3/dist-packages/cloudinit/config/cc_write_files_deferred.pyÚ
<listcomp>   s    ýÿzhandle.<locals>.<listcomp>zCSkipping module named %s, no deferred file defined in configuration)	ÚgetÚLOGÚdebugr   Úfetch_ssl_detailsÚpathsr   ÚdistroÚdefault_owner)r   r   r   r   Ú	file_listÚfiltered_filesÚssl_detailsr   r   r   Úhandle   s   þýr&   )Ú__doc__ÚloggingÚ	cloudinitr   Úcloudinit.cloudr   Úcloudinit.configr   Úcloudinit.config.cc_write_filesr   r   Úcloudinit.config.schemar   Úcloudinit.distrosr   Úcloudinit.settingsr	   r   Ú__annotations__Ú	getLoggerÚ__name__r   ÚstrÚlistr&   r   r   r   r   Ú<module>   s    ü
"