File manager - Edit - /usr/lib/python3/dist-packages/cloudinit/sources/__pycache__/DataSourceConfigDrive.cpython-310.pyc
Back
o �Ad, � @ s� d dl Z d dlmZ d dlmZmZmZ d dlmZm Z d dl mZ d dlm Z d dlmZ e�e�ZdZd Zd eiZdZdZd Zedd� eD ��ZG dd� dejej�Zdd� Zdd� Zddd�Z dd� Z!d dd�Z"eZ#eej$ffgZ%dd� Z&dS )!� N)�log)�sources�subp�util)� EventScope� EventType)�eni)�get_ibm_platform)� openstackziid-dsconfigdrive�pass�instance-id)�vfat�iso9660)zconfig-2zCONFIG-2)�sr�cdc c s, � | ]}t d d�D ] }d||f V q qdS )r � z /dev/%s%sN)�range)�.0�z�i� r �I/usr/lib/python3/dist-packages/cloudinit/sources/DataSourceConfigDrive.py� <genexpr> s �* r c sr e Zd ZdZejejejej ej hiZ� fdd�Zdd� Z dd� Zdd � Zed d� �Zedd � �Zdd� Z� ZS )�DataSourceConfigDrive�ConfigDrivec s\ t t| ��|||� d | _tj�|jd�| _d | _d | _ d | _ tj| _ d | _d | _i | _d S )N�config_drive)�superr �__init__�source�os�path�join�seed_dir�version�ec2_metadata�_network_configr �UNSET�network_json�network_eni� known_macs�files)�self�sys_cfg�distro�paths�� __class__r r r / s zDataSourceConfigDrive.__init__c C s0 t j�| �}d|| j| jf }|d| j 7 }|S )Nz%s [%s,ver=%s]z[source=%s])r � DataSource�__str__�dsmoder# r )r+ �root�mstrr r r r2 ; s zDataSourceConfigDrive.__str__c C s� d }i }i }| j dfD ]#}tj�|�sqz t|�}|}W n tjy. t�t d|� Y qw |s�| j �d�}t|d�D ]C}d }t� � rK|�d�rKd}ztj|t|d�}|}W n# tjya Y n tjyj Y n tjyz t�t d|� Y nw |r nq<|s�d S |�d i �}t�|tg�}| �|�d�| j�d�|d d kr�tjnd g�| _| jtjkr�d S t| j�}|d } || kr�t|| j| jtjkd� | jtjkr�t �d| | j� d S || _|| _ |�d�| _!|�d�| _"|d | _#| j$�%|�di �� |�d�} | | _&zt�'| �| _(W n t)�y( } zt �*d|� d | _(W Y d }~nd }~ww |�d�}|| _+zt�'|�| _,W n t)�yU } zt �*d|� d | _,W Y d }~nd }~ww |�d�| _-|�d�| _.dS )Nz /config-drivez#Failed reading config drive from %s�datasource_list)�dslistz/dev/cd�cd9660)�mtypezBroken config drive: %sF�metadatar3 r# � r )r- �networkz&%s: not claiming datasource, dsmode=%szec2-metadata�userdatar* � vendordataz"Invalid content in vendor-data: %s�vendordata2z#Invalid content in vendor-data2: %s�network_config�networkdataT)/r"