403Webshell
Server IP : 3.96.16.70  /  Your IP : 216.73.216.15
Web Server : Apache
System : Linux ip-172-31-26-103.ca-central-1.compute.internal 6.1.163-186.299.amzn2023.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Feb 24 16:35:42 UTC 2026 x86_64
User : ec2-user ( 1000)
PHP Version : 8.4.18
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /lib/python3.9/site-packages/cloudinit/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /lib/python3.9/site-packages/cloudinit/__pycache__/templater.cpython-39.pyc
a

�½bP�	@s�ddlZddlZddlZz ddlmZddlmZdZWne	e
fyVdZeZYn0ddlm
ZddlmZddlmZdd	lmZe�e�Ze�d
ej�Ze�d�ZdZGd
d�de�Zdd�Zdd�Zdd�Zddd�Z ddd�Z!dd�Z"dd�Z#dS) �N)�DebugUndefined)�TemplateTF)�log)�
type_utils)�util)�
write_filez##\s*template:(.*)z)\$\{([A-Za-z0-9_.]+)\}|\$([A-Za-z0-9_.]+)zCI_MISSING_JINJA_VAR/c@s eZdZdZdd�Zdd�ZdS)�UndefinedJinjaVariablez>Class used to represent any undefined jinja template variable.cCsdt|jfS)Nz%s%s)�MISSING_JINJA_PREFIX�_undefined_name)�self�r�7/usr/lib/python3.9/site-packages/cloudinit/templater.py�__str__(szUndefinedJinjaVariable.__str__cCs(t|��td�}tdj|j|d���dS)N�zhUndefined jinja variable: "{this}-{other}". Jinja tried subtraction. Perhaps you meant "{this}_{other}"?)�this�other)�str�replacer	�	TypeError�formatr
)rrrrr
�__sub__+s��zUndefinedJinjaVariable.__sub__N)�__name__�
__module__�__qualname__�__doc__rrrrrr
r%srcs�fdd�}t�||�S)z�This does simple replacement of bash variable like templates.

    It identifies patterns like ${a} or $a and can also identify patterns like
    ${a.b} or $a.b which will look for a key 'b' in the dictionary rooted
    by key 'a'.
    cs�|�d�}|dur|�d�}|dur,td��t�|�d��}�}t|�dkr�|��}t|t�svt	d|t
�|�|f��||}q@|��}t|t�s�t	d||t
�|�f��t||�S)N��z,Match encountered but no valid group present�.zRCan not traverse into non-dictionary '%s' of type %s while looking for subkey '%s'z<Can not extract key '%s' from non-dictionary '%s' of type %s)
�group�RuntimeError�collections�deque�split�len�popleft�
isinstance�dictr�tuZobj_namer)�match�name�pathZselected_params�key��paramsrr
�replacer=s0


��

��zbasic_render.<locals>.replacer)�
BASIC_MATCHER�sub)�contentr-r.rr,r
�basic_render5sr2cCs�dd�}|�d�dkr(|�dd�\}}n|}d}t�|�}|sHdt|fS|�d�����}|dvrntd	|��|d
kr�t	s�t
�d�dt|fS|d
kr�t	r�d
||fSdt|fSdS)NcSs4|�d�rdnd}t|tddgd�jfi|��|S)N�
rTz
jinja2.ext.do)Z	undefinedZtrim_blocks�
extensions)�endswith�	JTemplaterZrender)r1r-�addrrr
�jinja_render\s�
���z%detect_template.<locals>.jinja_renderr3���rr�basic)�jinjar:z.Unknown template rendering type '%s' requestedr;zcJinja not available as the selected renderer for desired template, reverting to the basic renderer.)�findr"�TYPE_MATCHERr(r2r�lower�strip�
ValueError�JINJA_AVAILABLE�LOGZwarning)�textr8Zident�restZ
type_match�
template_typerrr
�detect_template[s.


���

rFcCs4|si}tt�|��\}}}t�d||�|||�S)Nz+Rendering content of '%s' using renderer %s)rFrZ	load_filerB�debug)�fnr-rE�rendererr1rrr
�render_from_file�s
rJ�cCst||�}tj|||d�dS)N��mode)rJrr)rH�outfnr-rM�contentsrrr
�render_to_file�s
rPcCst||�}tj|||d�dS)�
Render stringrLN)�
render_stringrr)r1rNr-rMrOrrr
�render_string_to_file�s
rScCs |si}t|�\}}}|||�S)rQ)rF)r1r-Z_template_typerIrrr
rR�srRcCs~t|d��}|��}Wd�n1s(0Yd|i}t||���d}t�|�|dkrltj�|�nt	||dd�dS)N�r�variantr3�-�w)Zomode)
�open�readrR�rstriprZ	load_yaml�sys�stdout�writer)rU�template�outputZfhrOZ
tpl_paramsrrr
�render_cloudcfg�s&
r`)rK)rK)$r �rer[Zjinja2rZ
JUndefinedrr6rA�ImportError�AttributeError�objectZ	cloudinitrZloggingrr'rZcloudinit.atomic_helperrZ	getLoggerrrB�compile�Ir=r/r	rr2rFrJrPrSrRr`rrrr
�<module>
s2


&)



Youez - 2016 - github.com/yon3zu
LinuXploit