%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/lib/python3/dist-packages/cloudinit/sources/__pycache__/
Upload File :
Create Path :
Current File : //usr/lib/python3/dist-packages/cloudinit/sources/__pycache__/DataSourceUpCloud.cpython-312.pyc

�

���f���ddlZddlmZddlmZmZddlmZddlm	Z	ddl
mZeje�ZddiZd	Zd
Zd
ZGd�dej(�ZGd
�de�Zeej.ffeej.ej0ffgZd�Zy)�N)�net)�sources�util)�NoDHCPLeaseError)�EphemeralDHCPv4)�upcloud�metadata_urlz'http://169.254.169.254/metadata/v1.json��c�B�eZdZdZdZd�Zd�Zd�Zd�Zd�Z	e
d��Zy	)
�DataSourceUpCloud�UpCloudFc��tjj||||�||_t	�|_t
jt
j|ddgi�tg�|_
|jd|_|jjdt�|_|jjdt�|_|jjdt"�|_d|_d|_y)N�
datasourcerr	�retries�timeout�
wait_retry)r�
DataSource�__init__�distro�dict�metadatar�
mergemanydict�get_cfg_by_path�BUILTIN_DS_CONFIG�ds_cfg�metadata_address�get�
MD_RETRIESr�
MD_TIMEOUTr�
MD_WAIT_RETRYr�_network_config�
metadata_full)�self�sys_cfgr�pathss    �E/usr/lib/python3/dist-packages/cloudinit/sources/DataSourceUpCloud.pyrzDataSourceUpCloud.__init__"s������#�#�D�'�6�5�A�������
��(�(��$�$�W�|�Y�.G��L�!�
�
���!%���N� ;����{�{���y�*�=����{�{���y�*�=����+�+�/�/�,�
�F���#���!���c�*�tj�S�N)�	uc_helper�read_sysinfo�r$s r'�_get_sysinfozDataSourceUpCloud._get_sysinfo3s���%�%�'�'r(c��tj|j|j|j|j
��S)N)r�sec_betweenr)r+�
read_metadatarrrrr-s r'�_read_metadataz DataSourceUpCloud._read_metadata6s3���&�&��!�!��L�L�����L�L�	
�	
r(c��|j�\}}|sytjd|�|jr�	tj	d�tj�}tj	d|�t|j|�5tjtjd|j��}ddd�nF	tj	d�tjtjd|j��}|_|j%d	|�|j&d
<|j%d�|j&d<|j%d
�|j&d
<|j%d�|j&d<|j%dd�|j&d<|j%dd�|_|j%dd�|_y#1swY��xYw#ttjf$r-}tjtt!|��Yd}~yd}~wwxYw#tj$rC}tjtt!|��tjd|�Yd}~yd}~wwxYw)NFz"Running on UpCloud. server_uuid=%szFinding a fallback NICz*Discovering metadata via DHCP interface %szReading from metadata service)�logfunc�msg�funcz7Discovering metadata without DHCP-configured networkingzENo DHCP-enabled interfaces available, unable to fetch metadata for %s�instance_idzinstance-id�hostnamezlocal-hostname�network�public_keyszpublic-keys�region�default�availability_zone�vendor_data�	user_dataT)r.�LOG�info�perform_dhcp_setup�debug�cloudnet�find_fallback_nicrrr�log_timer2rr�InvalidMetaDataException�logexc�strr#rr�vendordata_raw�userdata_raw)r$�
is_upcloud�server_uuid�nic�md�es      r'�	_get_datazDataSourceUpCloud._get_data>s��$(�$5�$5�$7�!��[������5�{�C��"�"�
��	�	�2�3��0�0�2���	�	�F��L�$�T�[�[�#�6����� #�	�	�;�!�0�0��B���
��	�	�M���]�]��I�I�7��,�,��� ���')�v�v�m�[�'I��
�
�m�$�*,�&�&��*<��
�
�&�'�#%�6�6�)�#4��
�
�i� �')�v�v�m�'<��
�
�m�$�-/�V�V�H�i�-H��
�
�)�*� �f�f�]�D�9����F�F�;��5����K���%�g�&F�&F�G�
����C��Q��(���
���3�3�
����C��Q��(����6���
��
�sI�AG*�1G�G*�
AH3�G'�"G*�*H0�#H+�+H0�3J	�9J�J	c�H�tj|j��Sr*)r�instance_id_matches_system_uuid�get_instance_id)r$r%s  r'�check_instance_idz#DataSourceUpCloud.check_instance_idss���6�6�t�7K�7K�7M�N�Nr(c���|jr|jS|jjd�}|std��t	j
|�|_|jS)z�
        Configure the networking. This needs to be done each boot,
        since the IP and interface information might have changed
        due to reconfiguration.
        r9z/Unable to get network meta-data from server....)r"rr�RuntimeErrorr+�convert_network_config)r$�raw_network_configs  r'�network_configz DataSourceUpCloud.network_configvsg������'�'�'�!�]�]�.�.�y�9��!��A��
� )�?�?�� 
����#�#�#r(N)�__name__�
__module__�__qualname__�dsnamerBrr.r2rQrU�propertyrZ�r(r'r
r
s>��
�F���"�"(�
�3�jO��$��$r(r
c��eZdZdZdZy)�DataSourceUpCloudLocalaz
    Run in init-local using a DHCP discovery prior to metadata crawl.

    In init-local, no network is available. This subclass sets up minimal
    networking with dhclient on a viable nic so that it can talk to the
    metadata service. If the metadata service provides network configuration
    then render the network configuration for that instance based on metadata.
    TN)r[r\r]�__doc__rBr`r(r'rbrb�s����r(rbc�6�tj|t�Sr*)r�list_from_depends�datasources)�dependss r'�get_datasource_listrh�s���$�$�W�k�:�:r()�logging�	cloudinitrrDrr�cloudinit.net.dhcpr�cloudinit.net.ephemeralr�cloudinit.sources.helpersrr+�	getLoggerr[r@rrr r!rr
rb�DEP_FILESYSTEM�DEP_NETWORKrfrhr`r(r'�<module>rqs����%�#�/�3�:��g����!��#�%N�O���
�
�
��
�p$��*�*�p$�f
�.�
��g�4�4�6�7���/�/��1D�1D�E�F���;r(

Zerion Mini Shell 1.0