Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
File Manager
/
byp
/
izo
/
con7ext_sym404
/
rintoar.txt
/
usr
/
lib
/
python3.6
/
site-packages
/
cloudinit
/
cmd
/
devel
/
__pycache__
:
render.cpython-36.pyc
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
3 \�me� � @ s� d Z ddlZddlZddlZddlZddlmZ ddlmZm Z m Z dZeje �Zddd�Zdd d �Zdd� Ze d kr�ejeee� j� �� dS )z,Debug jinja template rendering of user-data.� N)�read_cfg_paths)�JinjaLoadError� NotJinjaError�render_jinja_payload_from_fileZrenderc C sL | st jttd�} | jdtdd� | jddtdd� | jdd d ddd � | S )a Build or extend and arg parser for jinja render utility. @param parser: Optional existing ArgumentParser instance representing the subcommand which will be extended to support the args of this utility. @returns: ArgumentParser with proper argument configuration. )�prog�description� user_dataz$Path to the user-data file to render)�type�helpz-iz--instance-datazXOptional path to instance-data.json file. Defaults to /run/cloud-init/instance-data.jsonz-dz--debug� store_trueFz+Add verbose messages during template render)�action�defaultr )�argparse�ArgumentParser�NAME�__doc__�add_argument�str)�parser� r �/usr/lib/python3.6/render.py� get_parser s r Fc C s0 |r |}nNt � }tj� }|jd�}|dkrT|jd�}tjj|�sXtjd||� |}n|}tjj|�sttjd|� dS y t | ��}|j � }W dQ R X W n tk r� tjd| � dS X yt|| ||r�d nd d�} W n6 t tfk �r } ztjdt| �� dS d} ~ X nX | �s tjd | � dS tjj| � dS )z�Render the provided user-data template file using instance-data values. Also setup CLI log handlers to report to stderr since this is a development utility which should be run by a human on the CLI. @return 0 on success, 1 on failure. � instance_datar Zinstance_data_sensitivez4Missing root-readable %s. Using redacted %s instead.z#Missing instance-data.json file: %s� NzMissing user-data file: %sTF)ZpayloadZ payload_fnZinstance_data_file�debugz5Cannot render from instance data due to exception: %sz#Unable to render user-data file: %s)r �os�getuidZget_runpath�path�exists�LOGZwarning�error�open�read�IOErrorr r r �repr�sys�stdout�write)Zuser_data_pathZinstance_data_pathr Zinstance_data_fn�pathsZuidZredacted_data_fn�streamr Zrendered_payload�er r r �render_template8 sL r+ c C s t |j|j|j�S )N)r+ r r r )�_name�argsr r r �handle_argsm s r. �__main__)N)NF)r r Zloggingr r% Zcloudinit.cmd.develr Z!cloudinit.handlers.jinja_templater r r r Z getLogger�__name__r r r+ r. �exit� parse_argsr r r r �<module> s 5