Fix eos_vlan associated interface check (#39661)
* Fix eos_vlan associated interface check Fix eos_vlan associated interface check by comparing the interface in want and have without converting the interface name to lower * Update eos_vlan docs
This commit is contained in:
parent
b20b964c4a
commit
afdc2364f2
2 changed files with 15 additions and 15 deletions
|
@ -45,14 +45,14 @@ options:
|
||||||
required: true
|
required: true
|
||||||
interfaces:
|
interfaces:
|
||||||
description:
|
description:
|
||||||
- List of interfaces that should be associated to the VLAN. The name of interface
|
- List of interfaces that should be associated to the VLAN. The name of interface is
|
||||||
should be in expanded format and not abbreviated.
|
case sensitive and should be in expanded format and not abbreviated.
|
||||||
associated_interfaces:
|
associated_interfaces:
|
||||||
description:
|
description:
|
||||||
- This is a intent option and checks the operational state of the for given vlan C(name)
|
- This is a intent option and checks the operational state of the for given vlan C(name)
|
||||||
for associated interfaces. The name of interface should be in expanded format and not abbreviated.
|
for associated interfaces. The name of interface is case sensitive and should be in
|
||||||
If the value in the C(associated_interfaces) does not match with the operational state of vlan
|
expanded format and not abbreviated. If the value in the C(associated_interfaces)
|
||||||
interfaces on device it will result in failure.
|
does not match with the operational state of vlan interfaces on device it will result in failure.
|
||||||
version_added: "2.5"
|
version_added: "2.5"
|
||||||
delay:
|
delay:
|
||||||
description:
|
description:
|
||||||
|
@ -245,10 +245,10 @@ def map_params_to_obj(module):
|
||||||
item[key] = module.params[key]
|
item[key] = module.params[key]
|
||||||
|
|
||||||
if item.get('interfaces'):
|
if item.get('interfaces'):
|
||||||
item['interfaces'] = [intf.replace(" ", "").lower() for intf in item.get('interfaces') if intf]
|
item['interfaces'] = [intf.replace(" ", "") for intf in item.get('interfaces') if intf]
|
||||||
|
|
||||||
if item.get('associated_interfaces'):
|
if item.get('associated_interfaces'):
|
||||||
item['associated_interfaces'] = [intf.replace(" ", "").lower() for intf in item.get('associated_interfaces') if intf]
|
item['associated_interfaces'] = [intf.replace(" ", "") for intf in item.get('associated_interfaces') if intf]
|
||||||
|
|
||||||
d = item.copy()
|
d = item.copy()
|
||||||
d['vlan_id'] = str(d['vlan_id'])
|
d['vlan_id'] = str(d['vlan_id'])
|
||||||
|
@ -259,8 +259,8 @@ def map_params_to_obj(module):
|
||||||
'vlan_id': str(module.params['vlan_id']),
|
'vlan_id': str(module.params['vlan_id']),
|
||||||
'name': module.params['name'],
|
'name': module.params['name'],
|
||||||
'state': module.params['state'],
|
'state': module.params['state'],
|
||||||
'interfaces': [intf.replace(" ", "").lower() for intf in module.params['interfaces']] if module.params['interfaces'] else [],
|
'interfaces': [intf.replace(" ", "") for intf in module.params['interfaces']] if module.params['interfaces'] else [],
|
||||||
'associated_interfaces': [intf.replace(" ", "").lower() for intf in
|
'associated_interfaces': [intf.replace(" ", "") for intf in
|
||||||
module.params['associated_interfaces']] if module.params['associated_interfaces'] else []
|
module.params['associated_interfaces']] if module.params['associated_interfaces'] else []
|
||||||
|
|
||||||
})
|
})
|
||||||
|
|
|
@ -137,9 +137,9 @@
|
||||||
that:
|
that:
|
||||||
- "result.changed == true"
|
- "result.changed == true"
|
||||||
- "'vlan 4000' in result.commands"
|
- "'vlan 4000' in result.commands"
|
||||||
- "'interface ethernet1' in result.commands"
|
- "'interface Ethernet1' in result.commands"
|
||||||
- "'switchport access vlan 4000' in result.commands"
|
- "'switchport access vlan 4000' in result.commands"
|
||||||
- "'interface ethernet2' in result.commands"
|
- "'interface Ethernet2' in result.commands"
|
||||||
- "'switchport access vlan 4000' in result.commands"
|
- "'switchport access vlan 4000' in result.commands"
|
||||||
# Ensure sessions contains epoc. Will fail after 18th May 2033
|
# Ensure sessions contains epoc. Will fail after 18th May 2033
|
||||||
- "'ansible_1' in result.session_name"
|
- "'ansible_1' in result.session_name"
|
||||||
|
@ -149,8 +149,8 @@
|
||||||
vlan_id: 4000
|
vlan_id: 4000
|
||||||
state: present
|
state: present
|
||||||
interfaces:
|
interfaces:
|
||||||
- ethernet 1 # interface name modified to test case insensitive and space scenario
|
- Ethernet 1 # interface name space scenario
|
||||||
- ethernet 2 # interface name modified to test case insensitive and space scenario
|
- Ethernet 2 # interface name space scenario
|
||||||
authorize: yes
|
authorize: yes
|
||||||
provider: "{{ cli }}"
|
provider: "{{ cli }}"
|
||||||
become: yes
|
become: yes
|
||||||
|
@ -194,7 +194,7 @@
|
||||||
that:
|
that:
|
||||||
- "result.changed == true"
|
- "result.changed == true"
|
||||||
- "'vlan 4000' in result.commands"
|
- "'vlan 4000' in result.commands"
|
||||||
- "'interface ethernet2' in result.commands"
|
- "'interface Ethernet2' in result.commands"
|
||||||
- "'no switchport access vlan 4000' in result.commands"
|
- "'no switchport access vlan 4000' in result.commands"
|
||||||
# Ensure sessions contains epoc. Will fail after 18th May 2033
|
# Ensure sessions contains epoc. Will fail after 18th May 2033
|
||||||
- "'ansible_1' in result.session_name"
|
- "'ansible_1' in result.session_name"
|
||||||
|
@ -204,7 +204,7 @@
|
||||||
vlan_id: 4000
|
vlan_id: 4000
|
||||||
state: present
|
state: present
|
||||||
interfaces:
|
interfaces:
|
||||||
- ethernet 1 # interface name modified to handle case insensitive and space scenario
|
- Ethernet 1 # space scenario
|
||||||
authorize: yes
|
authorize: yes
|
||||||
provider: "{{ cli }}"
|
provider: "{{ cli }}"
|
||||||
become: yes
|
become: yes
|
||||||
|
|
Loading…
Reference in a new issue