Server IP : 15.235.198.142 / Your IP : 216.73.216.190 Web Server : Apache/2.4.58 (Ubuntu) System : Linux ballsack 6.8.0-45-generic #45-Ubuntu SMP PREEMPT_DYNAMIC Fri Aug 30 12:02:04 UTC 2024 x86_64 User : www-data ( 33) PHP Version : 8.3.6 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /lib/python3/dist-packages/cloudinit/sources/__pycache__/ |
Upload File : |
� �f7D � �b � d Z ddlZddlZddlZddlZddlZddlmZmZ ddl m Z ddlmZm Z mZmZmZmZmZ ddlZddlmZ ddlmZ ddlmZ dd lmZmZmZmZmZ dd l m!Z! ejD e#� Z$dZ%dZ&d Z'ddddddd�Z(de)fd�Z* d2deee) de e)ef fd�Z+ G d� de� Z, G d� de� Z- G d� de� Z.de)de/fd�Z0 G d� dejb � Z2de3fd �Z4 d3d!ejj d"e)d#e3fd$�Z6 d3d!ejj d"e)d#e3dejn fd%�Z8 G d&� d'e� Z9 G d(� d)� Z:e&e9jv fd*e)d+e9de/fd,�Z<e2ejz ffgZ>d-� Z?e#d.k( rSddl@Z@d/ZA e@j� eA�0� ZCeCj� � eE ej� e<e9jv �1� � � yy)4a� Datasource for LXD, reads /dev/lxd/sock representation of instance data. Notes: * This datasource replaces previous NoCloud datasource for LXD. * Older LXD images may not have updates for cloud-init so NoCloud may still be detected on those images. * Detect LXD datasource when /dev/lxd/sock is an active socket file. * Info on dev-lxd API: https://documentation.ubuntu.com/lxd/en/latest/dev-lxd/ � N)�Flag�auto)�JSONDecodeError)�Any�Dict�List�Optional�Tuple�Union�cast)�HTTPAdapter)�HTTPConnection)�HTTPConnectionPool)� atomic_helper�sources�subp� url_helper�util)�find_fallback_nicz /dev/lxd/sockz1.0z http://lxd� user-data�network-config�vendor-data)�cloud-init.user-datazcloud-init.network-config�cloud-init.vendor-data�user.user-datazuser.network-config�user.vendor-data�returnc �J � d} t j d� rS t j dg� \ }}|j � dv r't j � d d }|dk( ry|d k( ry y| S # t j $ r"}t j d|� | cY d }~S d }~ww xY w)N�eth0zsystemd-detect-virtzHUnable to run systemd-detect-virt: %s. Rendering default network config.)�kvm�qemu�uname� �ppc64le�enp0s5�s390x�enc9�enp5s0)r �which�ProcessExecutionError�LOG�warning�stripr �system_info)�default_name� virt_type�_�err�archs �A/usr/lib/python3/dist-packages/cloudinit/sources/DataSourceLXD.py�_get_fallback_interface_namer5 / s� � ��L��z�z�'�(� ��9�9�&;�%<�=�L�I�q� �?�?�� ! � � �#�#�%�g�.�q�1�D��y� ����������% �)�)� ��K�K�5�� � ��� �s �A- �-B"� B�B"�B"�nicsc � � t � }|rt j d|� n t � }t j d|� dd|ddd�gd�gd �S ) zCReturn network config V1 dict representing instance network config.zCLXD datasource generating network from discovered active device: %szVLXD datasource generating network from systemd-detect-virt platform default device: %s� �physical�dhcpr )�type�control)r; �name�subnets)�version�config)r r+ �debugr5 )r6 �primary_nics r4 �generate_network_configrC I sm � � $�%�K��� � � �� � 3�4��� � � +�� � � #�#�%+��?�@� � � � � c �$ � � e Zd Z� fd�Zd� Z� xZS )�SocketHTTPConnectionc �2 �� t �| � d� || _ y �N� localhost)�super�__init__�socket_path��selfrL � __class__s �r4 rK zSocketHTTPConnection.__init__p s �� � ����%�&��rD c � � t j t j t j � | _ | j j | j � y �N)�socket�AF_UNIX�SOCK_STREAM�sock�connectrL �rN s r4 rV zSocketHTTPConnection.connectt s6 � ��M�M�&�.�.�&�2D�2D�E�� �� � ���$�*�*�+rD )�__name__� __module__�__qualname__rK rV � __classcell__�rO s @r4 rF rF o s �� �'�,rD rF c �$ � � e Zd Z� fd�Zd� Z� xZS )�SocketConnectionPoolc �2 �� || _ t �| � d� y rH )rL rJ rK rM s �r4 rK zSocketConnectionPool.__init__z s �� �&��� ����%rD c �, � t | j � S rQ )rF rL rW s r4 � _new_connzSocketConnectionPool._new_conn~ s � �#�D�$4�$4�5�5rD )rX rY rZ rK ra r[ r\ s @r4 r^ r^ y s �� �&�6rD r^ c � � e Zd Zdd�Zy)�LXDSocketAdapterNc � � t t � S rQ )r^ �LXD_SOCKET_PATH)rN �url�proxiess r4 �get_connectionzLXDSocketAdapter.get_connection� s � �#�O�4�4rD rQ )rX rY rZ rh � rD r4 rc rc � s � �5rD rc � metadata_typec � � t |t � r|S |�i S t j |� }|�&t j dj | |�� � �|S # t $ r,}t j dj | |�� � |�d}~ww xY w)a6 Convert raw instance data from str, bytes, YAML to dict :param metadata_type: string, one of as: meta-data, vendor-data, user-data network-config :param metadata_value: str, bytes or dict representing or instance-data. :raises: InvalidMetaDataError on invalid instance-data content. NzAInvalid {md_type}. Expected str, bytes or dict but found: {value})�md_type�valuez:Invalid {md_type} format. Expected YAML but found: {value})� isinstance�dictr � load_yaml�AttributeErrorr �InvalidMetaDataException�format)rj �metadata_value�parsed_metadata�excs r4 �_raw_instance_data_to_dictrw � s� � � �.�$�'������ ���.�.��8�� ���.�.� ��v�m�>�v�J� � � ��� � ��.�.� ��v�m�>�v�J� � � ���s �A � B� 'B�Bc � � � e Zd ZU dZej Zeee f e d<