܍~c ddlmZddlmZmZddlmZddlmZdZ GddejZ dZ d Z e ej ejffgZd Zd S) )List)dmisources) DataSourceEc2)DataSourceHostnamezAlibaba Cloud ECScLeZdZUdZdgZdZgZeee d<d dZ dZ dZ d S) DataSourceAliYunAliYunzhttp://100.100.100.200z 2016-01-01extended_metadata_versionsFcf|jd}d}|d}d}t||S)NhostnameFzlocalhost.localdomainT)metadatagetr)selffqdn resolve_ip metadata_onlyr is_defaults D/usr/lib/python3/dist-packages/cloudinit/sources/DataSourceAliYun.py get_hostnamezDataSourceAliYun.get_hostnames<=$$Z00  .HJ!(J777cRt|jdiS)Nz public-keys)parse_public_keysrrrs rget_public_ssh_keysz$DataSourceAliYun.get_public_ssh_keyss" !2!2="!E!EFFFrcbtrtjjStjjSN) _is_aliyunEC2 CloudNamesALIYUNNO_EC2_METADATArs r_get_cloud_namez DataSourceAliYun._get_cloud_name s$ << 2>( (>1 1rN)FFF) __name__ __module__ __qualname__dsname metadata_urlsmin_metadata_versionr rstr__annotations__rrr#rrr r su F-.M(,.S ...8888GGG22222rr c<tjdtkS)Nzsystem-product-name)r read_dmi_dataALIYUN_PRODUCTr,rrrr's  2 3 3~ EErc6g}|D]\}}t|tr(||Ct|t r||nt|tr}|dg}t|tr(||t|t r|||S)Nz openssh-key) items isinstancer*appendstriplistextenddictr) public_keyskeys_key_idkey_bodykeys rrr+s D(..00 ! ! h $ $ ! KK(( ) ) ) ) $ ' ' ! KK ! ! ! ! $ ' ' !,,}b11C#s## ! CIIKK((((C&& ! C   Krc6tj|tSr)rlist_from_depends datasources)dependss rget_datasource_listrABs  $Wk : ::rN)typingr cloudinitrrcloudinit.sourcesrrrr/r rrDEP_FILESYSTEM DEP_NETWORKr?rAr,rrrGs""""""""222222000000$22222s(2226FFF   $.0CDE ;;;;;r