%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /proc/self/root/usr/lib/python2.7/site-packages/salt/utils/openstack/
Upload File :
Create Path :
Current File : //proc/self/root/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyo

�
���^c@�sdZddlmZmZmZmZddlZddlmZe	Z
y*ddlmZddl
mZeZ
Wnek
r�nXe	Zy"ddlZddlZeZWnek
r�nXddlmZeje�Zd�Zd	�Zd
�Zdefd��YZdS(
u
Neutron class
i(tabsolute_importtwith_statementtunicode_literalstprint_functionN(tsix(tclient(tNeutronShell(t
exceptionscC�stS(N(tHAS_NEUTRON(((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyt
check_neutron'scC�stS(N(tHAS_KEYSTONEAUTH(((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pytcheck_keystone+scC�sGd}i}x4tj|�D]#}||kr||||<qqW|S(Nuusernameuuser_idupasswordutokenutenant_nameu	tenant_iduauth_urluservice_typeu
endpoint_typeuregion_nameuverifyuendpoint_urlutimeoutuinsecureuca_certuretriesuraise_errorusessionuauth(uusernameuuser_idupasswordutokenutenant_nameu	tenant_iduauth_urluservice_typeu
endpoint_typeuregion_nameuverifyuendpoint_urlutimeoutuinsecureuca_certuretriesuraise_errorusessionuauth(Rtiterkeys(tkwargst	variablestrettvar((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pytsanitize_neutronclient/stSaltNeutroncB�seZdZdcdcddced�Zdced�Zdced�Ze	d��Z
d�Zd�Zd�Z
d	�Zd
�Zd�Zd�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z!d�Z"dcdcdcdcdcdcdcd�Z#d�Z$d �Z%d!�Z&d"�Z'dced#�Z(ed$�Z)d%�Z*d&�Z+d'�Z,edcdcdcdcdcdcd(�Z-d)�Z.d*�Z/d+�Z0d,�Z1dcd-d.�Z2dcd/�Z3d0�Z4d1�Z5d2�Z6dced3�Z7dcdcd4�Z8d5�Z9d6�Z:d7�Z;d8�Z<d9�Z=d:�Z>d;�Z?dcd<�Z@dcd=�ZAd>�ZBd?�ZCd@�ZDdcdA�ZEdcdcdB�ZFdC�ZGdD�ZHdE�ZIdcdFdcdcdcdcdG�ZJdH�ZKedI�ZLdJ�ZMedK�ZNdL�ZOdM�ZPdN�ZQdO�ZRedP�ZSdQ�ZTdR�ZUdS�ZVdT�ZWdU�ZXdV�ZYdW�ZZdX�Z[dY�Z\dZ�Z]d[�Z^d\�Z_d]�Z`dcdcdcdcdcdcdcdcdcdcdcd^�Zad_�Zbd`�Zcda�Zddb�ZeRS(du/
    Class for all neutronclient functions
    unetworkc	
K�s�tddd�tsdSt|tg�rg|jd|d|d|d|d|d	|d
||	�n7|jd|d|d|d|d|d	|d
||	�dS(
u,
        Set up neutron credentials
        uversions.warn_untiluNeonuuThe neutron module has been deprecated and will be removed in {version}.  Please update to using the neutronng moduletusernametproject_nametauth_urltregion_nametservice_typetos_auth_plugintpasswordttenant_nameN(t	__utils__RtNonetallR
t	_new_initt	_old_init(
tselfRRRRRRRtuse_keystoneauthR
((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyt__init__Ds,
c

K�sA|dkri}ntjj|p'd�}|
j�|_|j�|_||jd<||jd<||jd<||jd<|jd�r�|
jdd�|jd<|
jdd�|jd<n||jd	<||jd
<t	|j�|_|j
|j�}tjjd|d|	�|_t
jd
|j|j�|_dS(Nupassworduusernameuproject_nameuauth_urlu3uuser_domain_nameudefaultuproject_domain_nameuregion_nameuservice_typetauthtverifytsession(Rt
keystoneauth1tloadingtget_plugin_loadertcopyt
client_kwargsR
tendswithtgetRtload_from_optionsR%tSessionRtClienttnetwork_conn(
R RRRRRRRR#R$R
tloadertoptions((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyRqs$	





c
K�s�|
j�|_||jd<||jd<||jd<||jd<||jd<||jd<|	|jd<t|j�|_tj|j�|_dS(Nuusernameutenant_nameuauth_urluservice_typeupassworduregion_nameuverify(R)R
RRR/R0(R RRRRRRRR#R$R
((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR�s






cC�s�g}xG|D]?}|d|kr'|S|jd�|kr
|j|�q
q
Wt|�dkrttjd��n,t|�dkr�tjd��n|dSdS(NuidunameiuResource not found.iu Multiple resource matches found.(R,tappendtlenRtMinionError(t	resourcest
name_or_idRtresource((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyt_fetch�s
cC�s|j|�}|dS(Nuid(t_fetch_port(R R8((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyt
_find_port_id�scC�s|j|�}|dS(Nuid(t_fetch_network(R R8((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyt_find_network_id�scC�s|j|�}|dS(Nuid(t
_fetch_subnet(R R8((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyt_find_subnet_id�scC�s|j|�}|dS(Nuid(t
_fetch_router(R R8((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyt_find_router_id�scC�s|j|�}|dS(Nuid(t_fetch_security_group(R R8((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyt_find_security_group_id�scC�s|j|�}|dS(Nuid(t_fetch_vpnservice(R R8((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyt_find_vpnservice_id�scC�s|j|�}|dS(Nuid(t_fetch_ipsec_site_connection(R R8((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyt_find_ipsec_site_connection_id�scC�s|j|�}|dS(Nuid(t_fetch_ikepolicy(R R8((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyt_find_ikepolicy_id�scC�s|j|�}|dS(Nuid(t_fetch_ipsecpolicy(R R8((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyt_find_ipsecpolicy_id�scC�s|j|�}|dS(Nuid(t_fetch_firewall_rule(R R8((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyt_find_firewall_rule_id�scC�s |j�d}|j||�S(Nuports(t
list_portsR9(R R7R6((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR:�scC�s |j�d}|j||�S(Nunetworks(t
list_networksR9(R R7R6((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR<�scC�s |j�d}|j||�S(Nusubnets(tlist_subnetsR9(R R7R6((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR>�scC�s |j�d}|j||�S(Nurouters(tlist_routersR9(R R7R6((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR@�scC�s |j�d}|j||�S(Nusecurity_groups(tlist_security_groupsR9(R R7R6((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyRB�scC�s |j�d}|j||�S(Nuvpnservices(tlist_vpnservicesR9(R R7R6((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyRD�scC�s |j�d}|j||�S(Nuipsec_site_connections(tlist_ipsec_site_connectionsR9(R R7R6((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyRF�s	cC�s |j�d}|j||�S(Nuikepolicies(tlist_ikepoliciesR9(R R7R6((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyRH�scC�s |j�d}|j||�S(Nu
ipsecpolicies(tlist_ipsecpoliciesR9(R R7R6((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyRJ�scC�s |j�d}|j||�S(Nufirewall_rules(tlist_firewall_rulesR9(R R7R6((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyRL�scC�s |j�d}|j||�S(Nu	firewalls(tlist_firewallsR9(R R7R6((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyt_fetch_firewall�scC�s
|j�S(u_
        Fetches tenant info in server's context
        for following quota operation
        (tget_quotas_tenant(R ((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyRZ�scC�s
|jj�S(u,
        Fetches all tenants quotas
        (R0tlist_quotas(R ((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR[scC�s|jjd|�S(uB
        Fetches information of a certain tenant's quotas
        t	tenant_id(R0t
show_quota(R R\((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR]
sc	
C�s�i}	|r||	d<n|r,||	d<n|r?||	d<n|rR||	d<n|re||	d<n|rx||	d<n|r�||	d<n|jjd|d	i|	d
6�S(u)
        Update a tenant's quota
        usubneturouterunetworku
floatingipuportusecurity_groupusecurity_group_ruleR\tbodyuquota(R0tupdate_quota(
R R\tsubnettroutertnetworkt
floatingiptporttsec_grptsec_grp_ruleR^((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR_s"






cC�s#|jjd|�}|r|StS(u;
        Delete the specified tenant's quota value
        R\(R0tdelete_quotatTrue(R R\R((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyRg(scC�s
|jj�S(uA
        Fetches a list of all extensions on server side
        (R0tlist_extensions(R ((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyRi/scC�s
|jj�S(u:
        Fetches a list of all ports for a tenant
        (R0RN(R ((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyRN5scC�s
|j|�S(u7
        Fetches information of a certain port
        (R:(R Rd((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyt	show_port;scC�sW|j|�}i|d6|d6|d6}|r=||d<n|jjdi|d6�S(u$
        Creates a new port
        uadmin_state_upunameu
network_idu	device_idR^uport(R=R0tcreate_port(R tnameRbt	device_idtadmin_state_uptnet_idR^((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyRkAs


cC�sC|j|�}i|d6|d6}|jjd|di|d6�S(u 
        Updates a port
        unameuadmin_state_upRdR^uport(R;R0tupdate_port(R RdRlRntport_idR^((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyRpMs


cC�s2|j|�}|jjd|�}|r.|StS(u,
        Deletes the specified port
        Rd(R;R0tdelete_portRh(R RdRqR((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyRrWscC�s
|jj�S(u=
        Fetches a list of all networks for a tenant
        (R0RO(R ((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyRO_scC�s
|j|�S(u:
        Fetches information of a certain network
        (R<(R Rb((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pytshow_networkesc	
C�s�i|d6|d6}	|r'||	d<n|r:||	d<n|rM||	d<n|r`||	d<n|rs||	d<n|r�||	d<n|jjd	i|	d
6�S(u'
        Creates a new network
        unameuadmin_state_upurouter:externaluprovider:network_typeuprovider:physical_networkuprovider:segmentation_idushareduvlan_transparentR^unetwork(R0tcreate_network(
R RlRnt
router_exttnetwork_typetphysical_networktsegmentation_idtsharedtvlan_transparentR^((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyRtks







cC�s6|j|�}|jjd|dii|d6d6�S(u#
        Updates a network
        RbR^unameunetwork(R=R0tupdate_network(R RbRlRo((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR{scC�s2|j|�}|jjd|�}|r.|StS(u/
        Deletes the specified network
        Rb(R=R0tdelete_networkRh(R RbRoR((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR|�scC�s
|jj�S(u=
        Fetches a list of all networks for a tenant
        (R0RP(R ((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyRP�scC�s
|j|�S(u9
        Fetches information of a certain subnet
        (R>(R R`((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pytshow_subnet�sicC�sK|j|�}i|d6|d6|d6|d6}|jjdi|d6�S(u&
        Creates a new subnet
        ucidru
ip_versionu
network_idunameR^usubnet(R=R0t
create_subnet(R RbtcidrRlt
ip_versionRoR^((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR~�s

cC�s6|j|�}|jjd|dii|d6d6�S(u"
        Updates a subnet
        R`R^unameusubnet(R?R0t
update_subnet(R R`Rlt	subnet_id((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR��scC�s2|j|�}|jjd|�}|r.|StS(u.
        Deletes the specified subnet
        R`(R?R0t
delete_subnetRh(R R`R�R((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR��scC�s
|jj�S(u<
        Fetches a list of all routers for a tenant
        (R0RQ(R ((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyRQ�scC�s
|j|�S(u9
        Fetches information of a certain router
        (R@(R Ra((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pytshow_router�scC�sWi|d6|d6}|r=|j|�}i|d6|d<n|jjdi|d6�S(u&
        Creates a new router
        unameuadmin_state_upu
network_iduexternal_gateway_infoR^urouter(R=R0t
create_router(R Rltext_networkRnR^Ro((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR��s

cK�s�|j|�}i}d|kro|jd�d	krCd	|d<qo|j|jd��}i|d6|d<n|d	k	r�||d<n|d	k	r�||d<n|jjd|di|d6�S(
u"
        Updates a router
        uext_networkuexternal_gateway_infou
network_idunameuadmin_state_upRaR^urouterN(RAR,RR=R0t
update_router(R RaRlRnR
t	router_idR^Ro((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR��s


cC�s2|j|�}|jjd|�}|r.|StS(u-
        Delete the specified router
        Ra(RAR0t
delete_routerRh(R RaR�R((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR��scC�s>|j|�}|j|�}|jjd|di|d6�S(uL
        Adds an internal network interface to the specified router
        RaR^u	subnet_id(RAR?R0tadd_interface_router(R RaR`R�R�((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR��scC�s>|j|�}|j|�}|jjd|di|d6�S(uQ
        Removes an internal network interface from the specified router
        RaR^u	subnet_id(RAR?R0tremove_interface_router(R RaR`R�R�((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR��scC�s>|j|�}|j|�}|jjd|di|d6�S(uJ
        Adds an external network gateway to the specified router
        RaR^u
network_id(RAR=R0tadd_gateway_router(R RaRbR�Ro((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR��scC�s"|j|�}|jjd|�S(uO
        Removes an external network gateway from the specified router
        Ra(RAR0tremove_gateway_router(R RaR�((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR�scC�s
|jj�S(u>
        Fetch a list of all floatingips for a tenant
        (R0tlist_floatingips(R ((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR�scC�s|jj|�S(u=
        Fetches information of a certain floatingip
        (R0tshow_floatingip(R t
floatingip_id((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR�scC�sX|j|�}i|d6}|r>|j|�}||d<n|jjdi|d6�S(u*
        Creates a new floatingip
        ufloating_network_iduport_idR^u
floatingip(R=R;R0tcreate_floatingip(R tfloating_networkRdRoR^Rq((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR�s

cC�sX|dkriid6}n#|j|�}ii|d6d6}|jjd|d|�S(uf
        Updates a floatingip, disassociates the floating ip if
        port is set to `None`
        u
floatingipuport_idRcR^N(RR;R0tupdate_floatingip(R R�RdR^Rq((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR�#scC�s |jj|�}|r|StS(u2
        Deletes the specified floatingip
        (R0tdelete_floatingipRh(R R�R((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR�0scC�s
|jj�S(uD
        Fetches a list of all security groups for a tenant
        (R0RR(R ((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyRR7scC�s
|j|�S(uA
        Fetches information of a certain security group
        (RB(R Re((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pytshow_security_group=scC�s.ii|d6|d6d6}|jjd|�S(u.
        Creates a new security group
        unameudescriptionusecurity_groupR^(R0tcreate_security_group(R RltdescR^((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR�Cs
cC�s`|j|�}iid6}|r3||dd<n|rJ||dd<n|jj|d|�S(u*
        Updates a security group
        usecurity_groupunameudescriptionR^(RCR0tupdate_security_group(R ReRlR�t
sec_grp_idR^((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR�Ks
cC�s/|j|�}|jj|�}|r+|StS(u6
        Deletes the specified security group
        (RCR0tdelete_security_groupRh(R ReR�R((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR�XscC�s
|jj�S(uI
        Fetches a list of all security group rules for a tenant
        (R0tlist_security_group_rules(R ((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR�`scC�s|jj|�dS(uF
        Fetches information of a certain security group rule
        usecurity_group_rule(R0tshow_security_group_rule(R tsec_grp_rule_id((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR�fs	uingressc
C�s`|j|�}i|d6|d6|d6|d6|d6|d6|d6}	|jjdi|	d	6�S(
u3
        Creates a new security group rule
        usecurity_group_iduremote_group_idu	directionuprotocoluport_range_minuport_range_maxu	ethertypeR^usecurity_group_rule(RCR0tcreate_security_group_rule(
R Ret
remote_grp_idt	directiontprotocoltport_range_mintport_range_maxtetherR�R^((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR�ms

cC�s#|jjd|�}|r|StS(u;
        Deletes the specified security group rule
        tsecurity_group_rule(R0tdelete_security_group_ruleRh(R R�R((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR�~s	cK�s|jj||�S(uL
        Fetches a list of all configured VPN services for a tenant
        (R0RS(R tretrieve_allR
((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyRS�scK�s"|j|�}|jj||�S(u?
        Fetches information of a specific VPN service
        (RER0tshow_vpnservice(R t
vpnserviceR
t
vpnservice_id((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR��scC�sZ|j|�}|j|�}i|d6|d6|d6|d6}|jjdi|d6�S(u+
        Creates a new VPN service
        u	subnet_idu	router_idunameuadmin_state_upR^u
vpnservice(R?RAR0tcreate_vpnservice(R R`RaRlRnR�R�R^((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR��s

cC�s9|j|�}i|d6}|jj|di|d6�S(u'
        Updates a VPN service
        udescriptionR^u
vpnservice(RER0tupdate_vpnservice(R R�R�R�R^((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR��s
cC�s/|j|�}|jj|�}|r+|StS(u3
        Deletes the specified VPN service
        (RER0tdelete_vpnserviceRh(R R�R�R((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR��scC�s
|jj�S(uL
        Fetches all configured IPsec Site Connections for a tenant
        (R0RT(R ((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyRT�scC�s
|j|�S(uG
        Fetches information of a specific IPsecSiteConnection
        (RF(R tipsec_site_connection((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pytshow_ipsec_site_connection�sc
K�sa|j|�}|j|�}|j|�}
i	|d6|d6|	d6|gd6|d6|
d6|d6|d6|d	6}d
|
kr�|
d
|d
<nd|
kr�|
d|d<nd|
kr�i|
dd
6|d<nd|
kr
d|kr�i|d<n|
d|dd<nd|
krGd|kr2i|d<n|
d|dd<n|jjdi|d6�S(u3
        Creates a new IPsecSiteConnection
        upskuipsecpolicy_iduadmin_state_upu
peer_cidrsuikepolicy_idu
vpnservice_idupeer_addressupeer_idunameu	initiatorumtuu
dpd_actionuactionudpdudpd_intervaluintervaludpd_timeoututimeoutR^uipsec_site_connection(RKRIRER0tcreate_ipsec_site_connection(R Rltipsecpolicyt	ikepolicyR�t
peer_cidrstpeer_addresstpeer_idtpskRnR
tipsecpolicy_idtikepolicy_idR�R^((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR��s8




cC�s/|j|�}|jj|�}|r+|StS(u;
        Deletes the specified IPsecSiteConnection
        (RGR0tdelete_ipsec_site_connectionRh(R R�tipsec_site_connection_idR((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR��s
			cC�s
|jj�S(uK
        Fetches a list of all configured IKEPolicies for a tenant
        (R0RU(R ((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyRU�scC�s
|j|�S(u=
        Fetches information of a specific IKEPolicy
        (RH(R R�((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pytshow_ikepolicy�scK�si|d6}d|kr*|d|d<nd|krG|d|d<nd|krd|d|d<nd|kr�|d|d<nd|kr�|d|d<nd|kr�i|dd6|d<nd	|kr�d|kr�i|d<n|d	|dd	<n|jjd
i|d6�S(u)
        Creates a new IKEPolicy
        unameuphase1_negotiation_modeuauth_algorithmuencryption_algorithmupfsuike_versionuunitsulifetimeuvalueR^u	ikepolicy(R0tcreate_ikepolicy(R RlR
R^((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR��s$

cC�s/|j|�}|jj|�}|r+|StS(u1
        Deletes the specified IKEPolicy
        (RIR0tdelete_ikepolicyRh(R R�R�R((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR�scC�s
|jj�S(uM
        Fetches a list of all configured IPsecPolicies for a tenant
        (R0RV(R ((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyRVscC�s
|j|�S(u?
        Fetches information of a specific IPsecPolicy
        (RJ(R R�((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pytshow_ipsecpolicy scK�si|d6}d|kr*|d|d<nd|krG|d|d<nd|krd|d|d<nd|kr�|d|d<nd|kr�|d|d<nd|kr�i|dd6|d<nd	|kr�d|kr�i|d<n|d	|dd	<n|jjd
i|d6�S(u+
        Creates a new IPsecPolicy
        unameutransform_protocoluauth_algorithmuencapsulation_modeuencryption_algorithmupfsuunitsulifetimeuvalueR^uipsecpolicy(R0tcreate_ipsecpolicy(R RlR
R^((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR�&s$

cC�s/|j|�}|jj|�}|r+|StS(u3
        Deletes the specified IPsecPolicy
        (RKR0tdelete_ipsecpolicyRh(R tipseecpolicytipseecpolicy_idR((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR�=scC�s
|jj�S(uN
        Fetches a list of all configured firewall rules for a tenant
        (R0RW(R ((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyRWEscC�s
|j|�S(uA
        Fetches information of a specific firewall rule
        (RL(R t
firewall_rule((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pytshow_firewall_ruleKscK�si|d6|d6}d|kr1|d|d<nd|krN|d|d<nd|krk|d|d<nd|kr�|d|d<nd|kr�|d|d<nd|kr�|d|d<nd	|kr�|d	|d	<nd
|kr�|d
|d
<n|jjdi|d6�S(
u,
        Create a new firlwall rule
        uprotocoluactionu	tenant_idunameudescriptionu
ip_versionusource_ip_addressudestination_portushareduenabledR^u
firewall_rule(R0tcreate_firewall_rule(R R�tactionR
R^((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR�Qs$cC�s/|j|�}|jj|�}|r+|StS(u5
        Deletes the specified firewall rule
        (RMR0tdelete_firewall_ruleRh(R R�tfirewall_rule_idR((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR�hsc
C�s�i}
|r||
d<n|r,||
d<n|r?||
d<n|rR||
d<n|re||
d<n|rx||
d<n|r�||
d<n|	r�|	|
d<n|
r�|
|
d	<n|r�||
d
<n|r�||
d<n|jj|di|
d
6�S(u(
        Update a firewall rule
        uprotocoluactionunameudescriptionu
ip_versionusource_ip_addressudestination_ip_addressusource_portudestination_portushareduenabledR^u
firewall_rule(R0tupdate_firewall_rule(R R�R�R�RltdescriptionR�tsource_ip_addresstdestination_ip_addresstsource_porttdestination_portRytenabledR^((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR�ps0










cC�s
|jj�S(u>
        Fetches a list of all firewalls for a tenant
        (R0RX(R ((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyRX�scC�s
|j|�S(u<
        Fetches information of a specific firewall
        (RY(R tfirewall((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyt
show_firewall�scC�s|jj|�S(u!
        List L3 agents.
        (R0tlist_l3_agent_hosting_routers(R Ra((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR��scC�s
|jj�S(u
        List agents.
        (R0tlist_agents(R ((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR��sN(ft__name__t
__module__t__doc__RtFalseR"RhRRtstaticmethodR9R;R=R?RARCRERGRIRKRMR:R<R>R@RBRDRFRHRJRLRYRZR[R]R_RgRiRNRjRkRpRrRORsRtR{R|RPR}R~R�R�RQR�R�R�R�R�R�R�R�R�R�R�R�R�RRR�R�R�R�R�R�R�R�RSR�R�R�R�RTR�R�R�RUR�R�R�RVR�R�R�RWR�R�R�R�RXR�R�R�(((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyR?s�$																													
																				
			
											
"	
																	(R�t
__future__RRRRtloggingtsalt.extRR�Rtneutronclient.v2_0Rtneutronclient.shellRRhtImportErrorR
tkeystoneauth1.loadingR&tkeystoneauth1.sessiontsaltRt	getLoggerR�tlogR	RRR(((s@/usr/lib/python2.7/site-packages/salt/utils/openstack/neutron.pyt<module>s."



			

Zerion Mini Shell 1.0