name : DataSourceVultr.cpython-39.opt-1.pyc
a

'�Dg�	@sddlZddlmZddlmmmZddlmZmZm	Z	m
Z
e�e�Z
ddddde
��e	��d	e	��d
fd�ZGdd
�d
ej�ZeejffgZdd�Zedk�rddlZe��s�ed�e�d�ejdd�jZe�eededededed�ZedZe��Z dS)�N)�Tuple)�sources�stages�util�versionzhttp://169.254.169.254��
�z"Cloud-Init/%s - OS: %s Variant: %s�systemZvariant)�url�retries�timeout�wait�
user-agentcs�eZdZUdZejjdZeedfe	d<�fdd�Z
edd��Zd	d
�Z
dd�Zd
d�Zdd�Zedd��Zedd��Z�ZS)�DataSourceVultr�Vultr)zstartup-script.�sensitive_metadata_keyscs<tt|��|||�t�t�|ddgi�tg�|_d|_dS)NZ
datasourcer)	�superr�__init__rZ
mergemanydictZget_cfg_by_path�BUILTIN_DS_CONFIG�ds_cfg�netcfg)�self�sys_cfg�distro�paths��	__class__��E/usr/lib/python3.9/site-packages/cloudinit/sources/DataSourceVultr.pyr%s��zDataSourceVultr.__init__cCst��S�N)�vultr�is_vultrrrrr�	ds_detect/szDataSourceVultr.ds_detectcCsTt�d�|��|_|jd|_|�|j�t�d|jd�t�d|jd�dS)NzMachine is a Vultr instance�	user-dataz	SUBID: %szinstance-idzHostname: %s�local-hostnameT)�LOG�debug�get_metadata�metadata�userdata_raw�get_datasource_data�rrrr�	_get_data4s

zDataSourceVultr._get_datacCsrd|vr"t�|d�|d|_nt�|d�|_|d|_|jddkrTd|jd<|d|_|jdkrnd|_dS)NZcloud_interfacesZ
interfaces�vendor-datar%�Zguestr$)r!Zadd_interface_namesrZgenerate_network_configZvendordata_rawr)r*)r�mdrrrr+Fs



z#DataSourceVultr.get_datasource_datac	Cs>tj|j|jd|jd|jd|jd|jd|j��d�S)Nrr
rrr)Ztmp_dir)r!r(rrZget_tmp_exec_pathr,rrrr([s�zDataSourceVultr.get_metadatacCs.t��sdSt��rdSt��d}t�|�S)NF�subid)r!r"Zis_baremetal�get_sysinforZinstance_id_matches_system_uuid)rrr1rrr�check_instance_idgsz!DataSourceVultr.check_instance_idcCsdSr rr,rrr�launch_indexsszDataSourceVultr.launch_indexcCs|jSr )rr,rrr�network_configwszDataSourceVultr.network_config)�__name__�
__module__�__qualname__Zdsnamer�
DataSourcerr�str�__annotations__r�staticmethodr#r-r+r(r3�propertyr4r5�
__classcell__rrrrrs

�


rcCst�|t�Sr )rZlist_from_depends�datasources)Zdependsrrr�get_datasource_list�sr@�__main__zMachine is not a Vultr instance�T)Zreporterrr
rrrr.)!Zlogging�typingrZcloudinit.sources.helpers.vultrrZhelpersr!Z	cloudinitrrrZ	getLoggerr6r&Zversion_stringZsystem_inforr9rZDEP_FILESYSTEMr?r@�sysr"�print�exitZInitrr(r0Zconfigr2Zsysinforrrr�<module>sF


���a
�

�

© 2025 Cubjrnet7