Файловый менеджер - Редактировать - /opt/imh-python/lib/python3.9/site-packages/libcloud/compute/drivers/__pycache__/dimensiondata.cpython-39.pyc
Ðазад
a q�hu� � @ sR d Z ddlmZ ddlmZ ddlmZ ddlmZm Z m Z ddlmZmZm Z ddlmZ ddlmZ dd lmZmZ dd lmZ ddlmZ ddlmZ dd lmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlm Z ddlm!Z! ddlm"Z" ddlm#Z# ddlm$Z$ ddlm%Z% ddlm&Z& ddlm'Z'm(Z( dd lm)Z) dd!lm*Z*m+Z+m,Z, dd"lm-Z-m.Z. dd#l/m0Z0m1Z1m2Z2 dd$lm3Z3 dd%l4m5Z5m6Z6 dd&l7Z7e5j8e5j9e5j9e5j9e5j9e5j9e5j:e5j;e5j;e5j;e5j<e5j<e5j=e5j=e5j>d'�Z?d(d)d*d+d,d-�Z@G d.d/� d/e�ZAd&S )0z Dimension Data Driver � )�ET)�LooseVersion)� BaseHTTPError)� NodeDriver�Node�NodeAuthPassword)�NodeSize� NodeImage�NodeLocation)�dd_object_to_id)�DimensionDataAPIException)�DimensionDataConnection�DimensionDataStatus)�DimensionDataNetwork)�DimensionDataNetworkDomain)�DimensionDataVlan)�#DimensionDataServerCpuSpecification)�DimensionDataServerDisk)�DimensionDataServerVMWareTools)�DimensionDataPublicIpBlock)�DimensionDataFirewallRule)�DimensionDataFirewallAddress)�DimensionDataNatRule)�DimensionDataAntiAffinityRule)�DimensionDataIpAddressList)�DimensionDataChildIpAddressList)�DimensionDataIpAddress)�DimensionDataPortList)�DimensionDataPort)�DimensionDataChildPortList)�DimensionDataNic)�NetworkDomainServicePlan)�DimensionDataTagKey)�DimensionDataTag)� API_ENDPOINTS�DEFAULT_REGION)� TYPES_URN)� SERVER_NS� NETWORK_NS� GENERAL_NS)� urlencode� ensure_string)�fixxpath�findtext�findall)� basestring)� NodeState�ProviderN))�NORMAL�falseN)�PENDING_CHANGEr3 N)r4 r3 �CHANGE_NETWORK_ADAPTER)r4 �truer5 )r4 r3 �EXCHANGE_NIC_VLANS)r4 r6 r7 )r2 r6 N)r4 r6 ZSTART_SERVER)�PENDING_ADDr6 Z DEPLOY_SERVER)r8 r6 ZDEPLOY_SERVER_WITH_DISK_SPEED)r4 r6 ZSHUTDOWN_SERVER)r4 r6 ZPOWER_OFF_SERVER)r4 r6 Z REBOOT_SERVER)r4 r6 ZRESET_SERVER)r4 r6 ZRECONFIGURE_SERVERZSERVERZCUSTOMER_IMAGEZNETWORK_DOMAINZVLANZPUBLIC_IP_BLOCK)r r r r r c s� e Zd ZdZdZeZdZdZe j ZddgiZdZ dddddef� fd d � Z� fdd�Z�dLd d�Z�dMdd�Zdd� Zdd� Z�dNdd�Z�dOdd�Z�dPdd�Z�dQdd�Z�dRdd�Z�dSdd �Zd!d"� Zd#d$� Z�dTd%d&�Zd'd(� Zd)d*� Zd+d,� Z d-d.� Z!d/d0� Z"�dUd1d2�Z#d3d4� Z$d5d6� Z%�dVd7d8�Z&�dWd9d:�Z'd;d<� Z(�dXd=d>�Z)�dYd?d@�Z*dAdB� Z+dCdD� Z,dEdF� Z-�dZdGdH�Z.�d[dIdJ�Z/dKdL� Z0dMdN� Z1�d\dPdQ�Z2dRdS� Z3dTdU� Z4dVdW� Z5dXdY� Z6�d]dZd[�Z7d\d]� Z8d^d_� Z9d`da� Z:dbdc� Z;ddde� Z<�d^dhdi�Z=�d_djdk�Z>�d`dldm�Z?dndo� Z@dpdq� ZAdrds� ZBdtdu� ZCdvdw� ZDdxdy� ZEdzd{� ZFd|d}� ZG�dad�d��ZH�dbd�d��ZI�dcd�d��ZJd�d�� ZK�ddd�d��ZLd�d�� ZMd�d�� ZNd�d�� ZOd�d�� ZPd�d�� ZQ�ded�d��ZRd�d�� ZS�dfd�d��ZTd�d�� ZUd�d�� ZVd�d�� ZW�dgd�d��ZX�dhd�d��ZYd�d�� ZZd�d�� Z[�did�d��Z\d�d�� Z]�djd�d��Z^d�d�� Z_�dkd�d��Z`d�d�� Zad�d�� Zbd�d�� Zcd�d�� Zdd�d�� Zed�d�� Zfd�d�� Zg�dld�dÄZh�dmd�dńZid�dDŽ Zjd�dɄ Zkd�d˄ Zl�dnd�d̈́Zm�dod�dτZnd�dф Zod�dӄ Zpd�dՄ Zq�dpd�dׄZrd�dل Zsetd�dۄ �Zui fd�d݄Zvd�d߄ Zwd�d� Zxd�d� Zy�dqd�d�Zz�drd�d�Z{�dsd�d�Z|d�d� Z}d�d� Z~d�d� Zd�d� Z�d�d�� Z�d�d�� Z�d�d�� Z�d�d�� Z�d�d�� Z�d�d�� Z��d �d� Z��d�d� Z��d�d� Z��d�d� Z��d�d � Z��d �d� Z��d�d � Z��d�d� Z��d�d� Z��d�d� Z��d�d� Z��d�d� Z��d�d� Z��d�d� Z��d�d� Z��d�d� Z��d �d!� Z��d"�d#� Z��d$�d%� Z��d&�d'� Z��d(�d)� Z�et�d*�d+� �Z�et�d,�d-� �Z�et�d.�d/� �Z�et�d0�d1� �Z�et�d2�d3� �Z�et�d4�d5� �Z�et�d6�d7� �Z�et�d8�d9� �Z�et�d:�d;� �Z�et�d<�d=� �Z�et�d>�d?� �Z�et�d@�dA� �Z�et�dB�dC� �Z�et�dD�dE� �Z�et�dF�dG� �Z�et�dH�dI� �Z�et�dJ�dK� �Z�� Z�S (t �DimensionDataNodeDriverzV DimensionData node driver. Default api_version is used unless specified. NZ DimensionDatazhttp://www.dimensiondata.com/�create_node�passwordg �?Tc sf |t vr|d u rtd| ��|d ur.t | | _|d ur<|| _tt| �jf |||||||d�|�� d S )Nz%Invalid region: %s, no host specified)�key�secret�secure�host�port�api_version�region)r$ � ValueError�selected_regionrA �superr9 �__init__) �selfr<