Note
This plugin is part of the community.network collection.
To install it use: ansible-galaxy collection install community.network
.
To use it in a playbook, specify: community.network.exos_lldp_interfaces
.
New in version 0.2.0: of community.network
Parameter | Choices/Defaults | Comments | |
---|---|---|---|
config list / elements=dictionary | The list of link layer discovery protocol interface attribute configurations | ||
enabled boolean |
| This is a boolean value to control disabling of LLDP on the interface name
| |
name string / required | Name of the interface LLDP needs to be configured on. | ||
state string |
| The state the configuration should be left in. |
# Using merged # Before state: # ------------- # # path: /rest/restconf/data/openconfig-lldp:lldp/interfaces?depth=4 # method: GET # data: # { # "openconfig-lldp:interfaces": { # "interface": [ # { # "config": { # "enabled": true, # "name": "1" # } # }, # { # "config": { # "enabled": true, # "name": "2" # } # }, # { # "config": { # "enabled": false, # "name": "3" # } # }, # { # "config": { # "enabled": true, # "name": "4" # } # }, # { # "config": { # "enabled": false, # "name": "5" # } # } # ] # } # } - name: Merge provided configuration with device configuration community.network.exos_lldp_interfaces: config: - name: '2' enabled: false - name: '5' enabled: true state: merged # Module Execution Results: # ------------------------- # # "before": # - name: '1' # enabled: True # - name: '2' # enabled: True # - name: '3' # enabled: False # - name: '4' # enabled: True # - name: '5' # enabled: False # # "requests": [ # { # "data": | # { # "openconfig-lldp:config": { # "enabled": false, # "name": "2" # } # } # "method": "PATCH", # "path": "/rest/restconf/data/openconfig-lldp:lldp/interfaces/interface=2/config" # }, # { # "data": | # { # "openconfig-lldp:config": { # "enabled": true, # "name": "5" # } # } # "method": "PATCH", # "path": "/rest/restconf/data/openconfig-lldp:lldp/interfaces/interface=5/config" # } # ] # # "after": # - name: '1' # enabled: True # - name: '2' # enabled: False # - name: '3' # enabled: False # - name: '4' # enabled: True # - name: '5' # enabled: True # After state: # ------------- # # path: /rest/restconf/data/openconfig-lldp:lldp/interfaces?depth=4 # method: GET # data: # { # "openconfig-lldp:interfaces": { # "interface": [ # { # "config": { # "enabled": true, # "name": "1" # } # }, # { # "config": { # "enabled": false, # "name": "2" # } # }, # { # "config": { # "enabled": false, # "name": "3" # } # }, # { # "config": { # "enabled": true, # "name": "4" # } # }, # { # "config": { # "enabled": true, # "name": "5" # } # } # ] # } # } # Using replaced # Before state: # ------------- # # path: /rest/restconf/data/openconfig-lldp:lldp/interfaces?depth=4 # method: GET # data: # { # "openconfig-lldp:interfaces": { # "interface": [ # { # "config": { # "enabled": true, # "name": "1" # } # }, # { # "config": { # "enabled": true, # "name": "2" # } # }, # { # "config": { # "enabled": false, # "name": "3" # } # }, # { # "config": { # "enabled": true, # "name": "4" # } # }, # { # "config": { # "enabled": false, # "name": "5" # } # } # ] # } # } - name: Replaces device configuration of listed lldp_interfaces with provided configuration community.network.exos_lldp_interfaces: config: - name: '1' enabled: false - name: '3' enabled: true state: merged # Module Execution Results: # ------------------------- # # "before": # - name: '1' # enabled: True # - name: '2' # enabled: True # - name: '3' # enabled: False # - name: '4' # enabled: True # - name: '5' # enabled: False # # "requests": [ # { # "data": | # { # "openconfig-lldp:config": { # "enabled": false, # "name": "1" # } # } # "method": "PATCH", # "path": "/rest/restconf/data/openconfig-lldp:lldp/interfaces/interface=1/config" # }, # { # "data": | # { # "openconfig-lldp:config": { # "enabled": true, # "name": "3" # } # } # "method": "PATCH", # "path": "/rest/restconf/data/openconfig-lldp:lldp/interfaces/interface=3/config" # } # ] # # "after": # - name: '1' # enabled: False # - name: '2' # enabled: True # - name: '3' # enabled: True # - name: '4' # enabled: True # - name: '5' # enabled: False # After state: # ------------- # # path: /rest/restconf/data/openconfig-lldp:lldp/interfaces?depth=4 # method: GET # data: # { # "openconfig-lldp:interfaces": { # "interface": [ # { # "config": { # "enabled": false, # "name": "1" # } # }, # { # "config": { # "enabled": true, # "name": "2" # } # }, # { # "config": { # "enabled": true, # "name": "3" # } # }, # { # "config": { # "enabled": true, # "name": "4" # } # }, # { # "config": { # "enabled": false, # "name": "5" # } # } # ] # } # } # Using deleted # Before state: # ------------- # # path: /rest/restconf/data/openconfig-lldp:lldp/interfaces?depth=4 # method: GET # data: # { # "openconfig-lldp:interfaces": { # "interface": [ # { # "config": { # "enabled": false, # "name": "1" # }, # }, # { # "config": { # "enabled": false, # "name": "2" # }, # }, # { # "config": { # "enabled": false, # "name": "3" # }, # } # ] # } # } - name: Delete lldp interface configuration (this will not delete other lldp configuration) community.network.exos_lldp_interfaces: config: - name: '1' - name: '3' state: deleted # Module Execution Results: # ------------------------- # # "before": # - name: '1' # enabled: False # - name: '2' # enabled: False # - name: '3' # enabled: False # # "requests": [ # { # "data": | # { # "openconfig-lldp:config": { # "enabled": true, # "name": "1" # } # } # "method": "PATCH", # "path": "/rest/restconf/data/openconfig-lldp:lldp/interfaces/interface=1/config" # }, # { # "data": | # { # "openconfig-lldp:config": { # "enabled": true, # "name": "3" # } # } # "method": "PATCH", # "path": "/rest/restconf/data/openconfig-lldp:lldp/interfaces/interface=3/config" # } # ] # # "after": # - name: '1' # enabled: True # - name: '2' # enabled: False # - name: '3' # enabled: True # # After state: # ------------- # path: /rest/restconf/data/openconfig-lldp:lldp/interfaces?depth=4 # method: GET # data: # { # "openconfig-lldp:interfaces": { # "interface": [ # { # "config": { # "enabled": true, # "name": "1" # }, # }, # { # "config": { # "enabled": false, # "name": "2" # }, # }, # { # "config": { # "enabled": true, # "name": "3" # }, # } # ] # } # } # Using overridden # Before state: # ------------- # # path: /rest/restconf/data/openconfig-lldp:lldp/interfaces?depth=4 # method: GET # data: # { # "openconfig-lldp:interfaces": { # "interface": [ # { # "config": { # "enabled": true, # "name": "1" # } # }, # { # "config": { # "enabled": true, # "name": "2" # } # }, # { # "config": { # "enabled": false, # "name": "3" # } # }, # { # "config": { # "enabled": true, # "name": "4" # } # }, # { # "config": { # "enabled": false, # "name": "5" # } # } # ] # } # } - name: Override device configuration of all lldp_interfaces with provided configuration community.network.exos_lldp_interfaces: config: - name: '3' enabled: true state: overridden # Module Execution Results: # ------------------------- # # "before": # - name: '1' # enabled: True # - name: '2' # enabled: True # - name: '3' # enabled: False # - name: '4' # enabled: True # - name: '5' # enabled: False # # "requests": [ # { # "data": | # { # "openconfig-lldp:config": { # "enabled": true, # "name": "5" # } # } # "method": "PATCH", # "path": "/rest/restconf/data/openconfig-lldp:lldp/interfaces/interface=5/config" # }, # { # "data": | # { # "openconfig-lldp:config": { # "enabled": true, # "name": "3" # } # } # "method": "PATCH", # "path": "/rest/restconf/data/openconfig-lldp:lldp/interfaces/interface=3/config" # } # ] # # "after": # - name: '1' # enabled: True # - name: '2' # enabled: True # - name: '3' # enabled: True # - name: '4' # enabled: True # - name: '5' # enabled: True # After state: # ------------- # # path: /rest/restconf/data/openconfig-lldp:lldp/interfaces?depth=4 # method: GET # data: # { # "openconfig-lldp:interfaces": { # "interface": [ # { # "config": { # "enabled": true, # "name": "1" # } # }, # { # "config": { # "enabled": true, # "name": "2" # } # }, # { # "config": { # "enabled": true, # "name": "3" # } # }, # { # "config": { # "enabled": true, # "name": "4" # } # }, # { # "config": { # "enabled": true, # "name": "5" # } # } # ] # } # }
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description |
---|---|---|
after list / elements=string | when changed | The resulting configuration model invocation. Sample: The configuration returned will always be in the same format of the parameters above. |
before list / elements=string | always | The configuration prior to the model invocation. Sample: The configuration returned will always be in the same format of the parameters above. |
requests list / elements=string | always | The set of requests pushed to the remote device. Sample: [{'data': '...', 'method': '...', 'path': '...'}, {'data': '...', 'method': '...', 'path': '...'}, {'data': '...', 'method': '...', 'path': '...'}] |
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/network/exos_lldp_interfaces_module.html