Current Dir: /snap/core22/2955/usr/lib/python3/dist-packages/cloudinit/handlers/__pycache__/
[FILE] boot_hook.cpython-310.pyc [ edit | delete | rename ]
[FILE] cloud_config.cpython-310.pyc [ edit | delete | rename ]
[FILE] jinja_template.cpython-310.pyc [ edit | delete | rename ]
[FILE] shell_script.cpython-310.pyc [ edit | delete | rename ]
[FILE] shell_script_by_frequency.cpython-310.pyc [ edit | delete | rename ]
[FILE] __init__.cpython-310.pyc [ edit | delete | rename ]
Viewing: /snap/core22/2955/usr/lib/python3/dist-packages/cloudinit/handlers/__pycache__/shell_script_by_frequency.cpython-310.pyc
o
��i@ � @ s� d dl Z d dlZd dlmZ d dlmZ d dlmZmZm Z e �
e�Zedede diZ
dd � Zd
d� Zdd
� ZG dd� de�ZdS )� N)�util)�Handler)�
PER_ALWAYS�PER_INSTANCE�PER_ONCEzper-bootzper-instancezper-oncec C s dt | � �}|S )Nztext/x-shellscript-)�path_map)�freq� mime_type� r
�N/usr/lib/python3/dist-packages/cloudinit/handlers/shell_script_by_frequency.py�get_mime_type_by_frequency s r c C s t | }tj�||�}|S )z]Return the frequency-specific subfolder for a given frequency constant
and parent folder.)r �os�path�join)r �scripts_dir�freqPath�folderr
r
r �get_script_folder_by_frequency s r c C sJ t j�| �}t�|�}t||�}t j�||�}t�|�}t�||d� dS )z|Given a filename, a payload, a frequency, and a scripts folder, write
the payload to the correct frequency-specific pathi� N) r
r �basenamer �clean_filenamer r �dos2unix�
write_file)�script_path�payload� frequencyr �filenamer r r
r
r �write_script_by_frequency# s
r c @ s e Zd ZdZdd� Zdd� ZdS )�ShellScriptByFreqPartHandlerz=Common base class for the frequency-specific script handlers.c K sJ t �| t� t|�g| _|| _|�d�| _d|v r#|�|d �| _d S d S )N�scriptsr )r �__init__r r �prefixes�script_frequency� get_cpathr )�selfr! �paths�_kwargsr
r
r r 1 s �z%ShellScriptByFreqPartHandler.__init__c C s8 |d urt j�|�}t�|�}t||| j| j� d S d S )N)r
r r r r r r! r )r# �data�ctyper r r r r
r
r �handle_part9 s
��z(ShellScriptByFreqPartHandler.handle_partN)�__name__�
__module__�__qualname__�__doc__r r( r
r
r
r r . s r )�loggingr
� cloudinitr �cloudinit.handlersr �cloudinit.settingsr r r � getLoggerr) �LOGr r r r r r
r
r
r �<module> s
�