extreme / extreme.exos / 0.1.1 / module / exos_vlans Manage VLANs on Extreme Networks EXOS devices. Authors: Jayalakshmi Viswanathan (@jayalakshmiV) preview | supported by communityextreme.exos.exos_vlans (0.1.1) — module
Install with ansible-galaxy collection install extreme.exos:==0.1.1
collections: - name: extreme.exos version: 0.1.1
This module provides declarative management of VLANs on Extreme Networks EXOS network devices.
# Using deleted # Before state: # ------------- # # path: /rest/restconf/data/openconfig-vlan:vlans/ # method: GET # data: # { # "openconfig-vlan:vlans": { # "vlan": [ # { # "config": { # "name": "Default", # "status": "ACTIVE", # "tpid": "oc-vlan-types:TPID_0x8100", # "vlan-id": 1 # }, # }, # { # "config": { # "name": "vlan_10", # "status": "ACTIVE", # "tpid": "oc-vlan-types:TPID_0x8100", # "vlan-id": 10 # }, # }, # { # "config": { # "name": "vlan_20", # "status": "ACTIVE", # "tpid": "oc-vlan-types:TPID_0x8100", # "vlan-id": 20 # }, # }, # { # "config": { # "name": "vlan_30", # "status": "ACTIVE", # "tpid": "oc-vlan-types:TPID_0x8100", # "vlan-id": 30 # }, # } # ] # } # } - name: Delete attributes of given VLANs exos_vlans: config: - vlan_id: 10 - vlan_id: 20 - vlan_id: 30 state: deleted
# Module Execution Results: # ------------------------- # # "after": [ # { # "name": "Default", # "state": "active", # "vlan_id": 1 # } # ], # # "before": [ # { # "name": "Default", # "state": "active", # "vlan_id": 1 # }, # { # "name": "vlan_10", # "state": "active", # "vlan_id": 10 # }, # { # "name": "vlan_20", # "state": "active", # "vlan_id": 20 # } # { # "name": "vlan_30", # "state": "active", # "vlan_id": 30 # } # ], # # "requests": [ # { # "data": null, # "method": "DELETE", # "path": "/rest/restconf/data/openconfig-vlan:vlans/vlan=10" # }, # { # "data": null, # "method": "DELETE", # "path": "/rest/restconf/data/openconfig-vlan:vlans/vlan=20" # }, # { # "data": null, # "method": "DELETE", # "path": "/rest/restconf/data/openconfig-vlan:vlans/vlan=30" # } # ] # # # After state: # ------------- # # path: /rest/restconf/data/openconfig-vlan:vlans/ # method: GET # data: # { # "openconfig-vlan:vlans": { # "vlan": [ # { # "config": { # "name": "Default", # "status": "ACTIVE", # "tpid": "oc-vlan-types:TPID_0x8100", # "vlan-id": 1 # }, # } # ] # } # } # Using merged # Before state: # ------------- # path: /rest/restconf/data/openconfig-vlan:vlans/ # method: GET # data: # { # "openconfig-vlan:vlans": { # "vlan": [ # { # "config": { # "name": "Default", # "status": "ACTIVE", # "tpid": "oc-vlan-types:TPID_0x8100", # "vlan-id": 1 # }, # } # ] # } # } - name: Merge provided configuration with device configuration exos_vlans: config: - name: vlan_10 vlan_id: 10 state: active - name: vlan_20 vlan_id: 20 state: active - name: vlan_30 vlan_id: 30 state: active state: merged
# Module Execution Results: # ------------------------- # # "after": [ # { # "name": "Default", # "state": "active", # "vlan_id": 1 # }, # { # "name": "vlan_10", # "state": "active", # "vlan_id": 10 # }, # { # "name": "vlan_20", # "state": "active", # "vlan_id": 20 # }, # { # "name": "vlan_30", # "state": "active", # "vlan_id": 30 # } # ], # # "before": [ # { # "name": "Default", # "state": "active", # "vlan_id": 1 # } # ], # # "requests": [ # { # "data": { # "openconfig-vlan:vlan": [ # { # "config": { # "name": "vlan_10", # "status": "ACTIVE", # "tpid": "oc-vlan-types:TPID_0x8100", # "vlan-id": 10 # } # } # ] # }, # "method": "POST", # "path": "/rest/restconf/data/openconfig-vlan:vlans/" # }, # { # "data": { # "openconfig-vlan:vlan": [ # { # "config": { # "name": "vlan_20", # "status": "ACTIVE", # "tpid": "oc-vlan-types:TPID_0x8100", # "vlan-id": 20 # } # } # ] # }, # "method": "POST", # "path": "/rest/restconf/data/openconfig-vlan:vlans/" # }, # "data": { # "openconfig-vlan:vlan": [ # { # "config": { # "name": "vlan_30", # "status": "ACTIVE", # "tpid": "oc-vlan-types:TPID_0x8100", # "vlan-id": 30 # } # } # ] # }, # "method": "POST", # "path": "/rest/restconf/data/openconfig-vlan:vlans/" # } # ] # # # After state: # ------------- # # path: /rest/restconf/data/openconfig-vlan:vlans/ # method: GET # data: # { # "openconfig-vlan:vlans": { # "vlan": [ # { # "config": { # "name": "Default", # "status": "ACTIVE", # "tpid": "oc-vlan-types:TPID_0x8100", # "vlan-id": 1 # }, # }, # { # "config": { # "name": "vlan_10", # "status": "ACTIVE", # "tpid": "oc-vlan-types:TPID_0x8100", # "vlan-id": 10 # }, # }, # { # "config": { # "name": "vlan_20", # "status": "ACTIVE", # "tpid": "oc-vlan-types:TPID_0x8100", # "vlan-id": 20 # }, # }, # { # "config": { # "name": "vlan_30", # "status": "ACTIVE", # "tpid": "oc-vlan-types:TPID_0x8100", # "vlan-id": 30 # }, # } # ] # } # } # Using overridden # Before state: # ------------- # # path: /rest/restconf/data/openconfig-vlan:vlans/ # method: GET # data: # { # "openconfig-vlan:vlans": { # "vlan": [ # { # "config": { # "name": "Default", # "status": "ACTIVE", # "tpid": "oc-vlan-types:TPID_0x8100", # "vlan-id": 1 # }, # }, # { # "config": { # "name": "vlan_10", # "status": "ACTIVE", # "tpid": "oc-vlan-types:TPID_0x8100", # "vlan-id": 10 # }, # }, # { # "config": { # "name": "vlan_20", # "status": "ACTIVE", # "tpid": "oc-vlan-types:TPID_0x8100", # "vlan-id": 20 # }, # }, # { # "config": { # "name": "vlan_30", # "status": "ACTIVE", # "tpid": "oc-vlan-types:TPID_0x8100", # "vlan-id": 30 # }, # } # ] # } # } - name: Override device configuration of all VLANs with provided configuration exos_vlans: config: - name: TEST_VLAN10 vlan_id: 10 state: overridden
# Module Execution Results: # ------------------------- # # "after": [ # { # "name": "Default", # "state": "active", # "vlan_id": 1 # }, # { # "name": "TEST_VLAN10", # "state": "active", # "vlan_id": 10 # }, # ], # # "before": [ # { # "name": "Default", # "state": "active", # "vlan_id": 1 # }, # { # "name": "vlan_10", # "state": "active", # "vlan_id": 10 # }, # { # "name": "vlan_20", # "state": "active", # "vlan_id": 20 # }, # { # "name": "vlan_30", # "state": "active", # "vlan_id": 30 # } # ], # # "requests": [ # { # "data": { # "openconfig-vlan:vlan": { # "vlan": [ # { # "config": { # "name": "TEST_VLAN10", # "status": "ACTIVE", # "tpid": "oc-vlan-types:TPID_0x8100", # "vlan-id": 10 # } # } # ] # } # } # }, # "method": "PATCH", # "path": "/rest/restconf/data/openconfig-vlan:vlans/" # }, # { # "data": null, # "method": "DELETE", # "path": "/rest/restconf/data/openconfig-vlan:vlans/vlan=20" # }, # { # "data": null, # "method": "DELETE", # "path": "/rest/restconf/data/openconfig-vlan:vlans/vlan=30" # } # ] # # # After state: # ------------- # # path: /rest/restconf/data/openconfig-vlan:vlans/ # method: GET # data: # { # "openconfig-vlan:vlans": { # "vlan": [ # { # "config": { # "name": "Default", # "status": "ACTIVE", # "tpid": "oc-vlan-types:TPID_0x8100", # "vlan-id": 1 # }, # }, # { # "config": { # "name": "TEST_VLAN10", # "status": "ACTIVE", # "tpid": "oc-vlan-types:TPID_0x8100", # "vlan-id": 10 # }, # } # ] # } # } # Using replaced # Before state: # ------------- # # path: /rest/restconf/data/openconfig-vlan:vlans/ # method: GET # data: # { # "openconfig-vlan:vlans": { # "vlan": [ # { # "config": { # "name": "Default", # "status": "ACTIVE", # "tpid": "oc-vlan-types:TPID_0x8100", # "vlan-id": 1 # }, # }, # { # "config": { # "name": "vlan_10", # "status": "ACTIVE", # "tpid": "oc-vlan-types:TPID_0x8100", # "vlan-id": 10 # }, # }, # { # "config": { # "name": "vlan_20", # "status": "ACTIVE", # "tpid": "oc-vlan-types:TPID_0x8100", # "vlan-id": 20 # }, # }, # { # "config": { # "name": "vlan_30", # "status": "ACTIVE", # "tpid": "oc-vlan-types:TPID_0x8100", # "vlan-id": 30 # }, # } # ] # } # } - name: Replaces device configuration of listed VLANs with provided configuration exos_vlans: config: - name: Test_VLAN20 vlan_id: 20 - name: Test_VLAN30 vlan_id: 30 state: replaced
state: choices: - merged - replaced - overridden - deleted default: merged description: - The state the configuration should be left in type: str config: description: A dictionary of VLANs options elements: dict suboptions: name: description: - Ascii name of the VLAN. type: str state: choices: - active - suspend default: active description: - Operational state of the VLAN type: str vlan_id: description: - ID of the VLAN. Range 1-4094 required: true type: int type: list
after: description: The resulting configuration model invocation. returned: when changed sample: "The configuration returned will always be in the same format\n of the parameters\ \ above.\n" type: list before: description: The configuration prior to the model invocation. returned: always sample: "The configuration returned will always be in the same format\n of the parameters\ \ above.\n" type: list requests: description: The set of requests pushed to the remote device. returned: always sample: - data: '...' method: '...' path: '...' - data: '...' method: '...' path: '...' - data: '...' method: '...' path: '...' type: list