Anons79 Mini Shell

Directory : /lib/python2.7/site-packages/ansible/modules/network/nxos/
Upload File :
Current File : //lib/python2.7/site-packages/ansible/modules/network/nxos/nxos_udld_interface.pyc

�
�Udac@s�idd6dgd6dd6ZdZdZdZd	d
lmZmZd	dlmZd	dlm	Z	d
�Z
d�Zd�Zd�Z
d�Zd�Zedkr�e�ndS(s1.1tmetadata_versiontpreviewtstatustnetworktsupported_bysD
---
module: nxos_udld_interface
extends_documentation_fragment: nxos
version_added: "2.2"
short_description: Manages UDLD interface configuration params.
description:
    - Manages UDLD interface configuration params.
author:
    - Jason Edelman (@jedelman8)
notes:
    - Tested against NXOSv 7.3.(0)D1(1) on VIRL
    - Feature UDLD must be enabled on the device to use this module.
options:
    mode:
        description:
            - Manages UDLD mode for an interface.
        required: true
        choices: ['enabled','disabled','aggressive']
    interface:
        description:
            - FULL name of the interface, i.e. Ethernet1/1-
        required: true
    state:
        description:
            - Manage the state of the resource.
        required: false
        default: present
        choices: ['present','absent']
s�
# ensure Ethernet1/1 is configured to be in aggressive mode
- nxos_udld_interface:
    interface: Ethernet1/1
    mode: aggressive
    state: present
    host: "{{ inventory_hostname }}"
    username: "{{ un }}"
    password: "{{ pwd }}"

# Remove the aggressive config only if it's currently in aggressive mode and then disable udld (switch default)
- nxos_udld_interface:
    interface: Ethernet1/1
    mode: aggressive
    state: absent
    host: "{{ inventory_hostname }}"
    username: "{{ un }}"
    password: "{{ pwd }}"

# ensure Ethernet1/1 has aggressive mode enabled
- nxos_udld_interface:
    interface: Ethernet1/1
    mode: enabled
    host: "{{ inventory_hostname }}"
    username: "{{ un }}"
    password: "{{ pwd }}"
s�
proposed:
    description: k/v pairs of parameters passed into module
    returned: always
    type: dict
    sample: {"mode": "enabled"}
existing:
    description:
        - k/v pairs of existing configuration
    returned: always
    type: dict
    sample: {"mode": "aggressive"}
end_state:
    description: k/v pairs of configuration after module execution
    returned: always
    type: dict
    sample: {"mode": "enabled"}
updates:
    description: command sent to the device
    returned: always
    type: list
    sample: ["interface ethernet1/33",
            "no udld aggressive ; no udld disable"]
changed:
    description: check to see if a change was made on the device
    returned: always
    type: bool
    sample: true
i����(tload_configtrun_commands(tnxos_argument_spec(t
AnsibleModulecCsGg}x:|D]2}t|t�r2|j|�q
|j|�q
W|S(N(t
isinstancetlisttextendtappend(t
command_liststflat_command_listtcommand((sT/usr/lib/python2.7/site-packages/ansible/modules/network/nxos/nxos_udld_interface.pytflatten_listvs
cCsd|j�d}i}d}d}y�t|i|d6dd6g�d}d|krhd}d}nld|kr�d	}d}nQd
|kr�d}d
}n6d|kr�d	}d}nd
|kr�d}d
}n||d<Wn tttfk
ri}nX||fS(Nsshow run udld all | section t$Rttexttoutputit
aggressivesno udld enabletdisabledsno udld disabletenabledsudld disablesudld enabletmode(ttitletNoneRtKeyErrortAttributeErrort
IndexError(tmodulet	interfaceRtinterface_udldRtmode_strtbody((sT/usr/lib/python2.7/site-packages/ansible/modules/network/nxos/nxos_udld_interface.pytget_udld_interface�s2$					
cCsVg}|d}|dkr,|jd�n
|jd�|jddj|��|S(NRRsudld aggressivesno udld aggressiveis
interface {0}(Rtinserttformat(tdeltaRRtexistingtcommandsR((sT/usr/lib/python2.7/site-packages/ansible/modules/network/nxos/nxos_udld_interface.pyt#get_commands_config_udld_interface1�s

cCs�g}t||�\}}|d}|dkrO|dkrFd}qjd}n|dkrdd}nd}|r�|j|�|jddj|��n|S(	NRRsno udld enablesudld enablesno udld disablesudld disableis
interface {0}(R"RR#R$(R%RRR&R'R RR((sT/usr/lib/python2.7/site-packages/ansible/modules/network/nxos/nxos_udld_interface.pyt#get_commands_config_udld_interface2�s
			
cCs�g}t||�\}}|d}|dkr:d}nT|dkrd|dkr[d}q�d}n*|dkr�|d	kr�d}q�d}n|r�|j|�|jd
dj|��n|S(NRRsno udld aggressiveRsudld enablesno udld enablesudld disableRsno udld disableis
interface {0}(R"RR#R$(R%RRR&R'R RR((sT/usr/lib/python2.7/site-packages/ansible/modules/network/nxos/nxos_udld_interface.pyt"get_commands_remove_udld_interface�s"
					
cCs)tdtddddgdt�dtdd	dt�d
tdddgd
d��}|jt�td|dt�}t�}|jdj�}|jd}|jd
}td|�}t||�\}}|}	tt	|j
��j|j
���}
t}g}g}
|dkr|
r�t
|
|||�}|j|�t|�}
|jrt|jdtd|
�nt}t||
�|
ddks�|
ddkrg}t|
|||�}|j|�t|�}
|jr�|jdtd|
�q
t||
�qq�n�t	|j
��j|j
��}|r�tt|�|||�}t|�}
|jr�|jdtd|
�q�t}t||
�n|js�t||�\}	}d|
kr�|
jd�q�ni}||d<||d<|	|d<|
|d<||d<||d<|j|�dS(NRtchoicesRRRtrequiredRttypetstrtstatetabsenttpresenttdefaultt
argument_spectsupports_check_modetchangedR't	configureitproposedR&t	end_statetupdatestwarnings(tdicttTruetupdateRRR
tparamstlowerR"tsettitemst
differencetFalseR(RRt
check_modet	exit_jsonRR)tintersectionR*tpop(R3RR:RRR/R7R&R R8R%R5R'tcmdsRtcommontresults((sT/usr/lib/python2.7/site-packages/ansible/modules/network/nxos/nxos_udld_interface.pytmain�sv	
		

'	
	
 	
	!		





t__main__N(tANSIBLE_METADATAt
DOCUMENTATIONtEXAMPLEStRETURNt&ansible.module_utils.network.nxos.nxosRRRtansible.module_utils.basicRRR"R(R)R*RKt__name__(((sT/usr/lib/python2.7/site-packages/ansible/modules/network/nxos/nxos_udld_interface.pyt<module>s 


 	
					P

Anons79 File Manager Version 1.0, Coded By Anons79
Email: [email protected]