mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-07-04 15:40:20 -07:00
Fixes for the N3500 platform that uses the A8 image (#36261)
* fix nxos_l3_interface tests as n35 doesn't support ipv6 * add terminal dont-ask to nxos_feature and nxos_lldp * put interfaces in L2 mode for N35 * fix nxos_feature unit-tests
This commit is contained in:
parent
5b5d24631a
commit
e24c547a3a
9 changed files with 39 additions and 11 deletions
|
@ -236,6 +236,9 @@ def main():
|
||||||
cmds = get_commands(proposed, existing, state, module)
|
cmds = get_commands(proposed, existing, state, module)
|
||||||
|
|
||||||
if cmds:
|
if cmds:
|
||||||
|
# On N35 A8 images, some features return a yes/no prompt
|
||||||
|
# on enablement or disablement. Bypass using terminal dont-ask
|
||||||
|
cmds.insert(0, 'terminal dont-ask')
|
||||||
if not module.check_mode:
|
if not module.check_mode:
|
||||||
load_config(module, cmds)
|
load_config(module, cmds)
|
||||||
results['changed'] = True
|
results['changed'] = True
|
||||||
|
|
|
@ -99,6 +99,9 @@ def main():
|
||||||
result['commands'] = commands
|
result['commands'] = commands
|
||||||
|
|
||||||
if commands:
|
if commands:
|
||||||
|
# On N35 A8 images, some features return a yes/no prompt
|
||||||
|
# on enablement or disablement. Bypass using terminal dont-ask
|
||||||
|
commands.insert(0, 'terminal dont-ask')
|
||||||
if not module.check_mode:
|
if not module.check_mode:
|
||||||
load_config(module, commands)
|
load_config(module, commands)
|
||||||
|
|
||||||
|
|
|
@ -7,6 +7,10 @@
|
||||||
- set_fact: testint2="{{ nxos_int2 }}"
|
- set_fact: testint2="{{ nxos_int2 }}"
|
||||||
- set_fact: testint3="{{ nxos_int3 }}"
|
- set_fact: testint3="{{ nxos_int3 }}"
|
||||||
|
|
||||||
|
- set_fact: ipv6_address=""
|
||||||
|
- set_fact: ipv6_address="33:db::2/8"
|
||||||
|
when: ipv6_supported
|
||||||
|
|
||||||
- name: Setup - remove address from interface prior to testing(Part1)
|
- name: Setup - remove address from interface prior to testing(Part1)
|
||||||
nxos_config:
|
nxos_config:
|
||||||
lines:
|
lines:
|
||||||
|
@ -69,7 +73,7 @@
|
||||||
nxos_l3_interface: &conf_agg
|
nxos_l3_interface: &conf_agg
|
||||||
aggregate:
|
aggregate:
|
||||||
- { name: "{{ testint2 }}", ipv4: 192.168.22.1/24 }
|
- { name: "{{ testint2 }}", ipv4: 192.168.22.1/24 }
|
||||||
- { name: "{{ testint3 }}", ipv4: 192.168.20.1/24, ipv6: "33:db::2/8" }
|
- { name: "{{ testint3 }}", ipv4: 192.168.20.1/24, ipv6: "{{ ipv6_address }}" }
|
||||||
provider: "{{ cli }}"
|
provider: "{{ cli }}"
|
||||||
register: result
|
register: result
|
||||||
|
|
||||||
|
@ -89,7 +93,7 @@
|
||||||
nxos_l3_interface: &rm_agg
|
nxos_l3_interface: &rm_agg
|
||||||
aggregate:
|
aggregate:
|
||||||
- { name: "{{ testint2 }}", ipv4: 192.168.22.1/24 }
|
- { name: "{{ testint2 }}", ipv4: 192.168.22.1/24 }
|
||||||
- { name: "{{ testint3 }}", ipv4: 192.168.20.1/24, ipv6: "33:db::2/8" }
|
- { name: "{{ testint3 }}", ipv4: 192.168.20.1/24, ipv6: "{{ ipv6_address }}" }
|
||||||
provider: "{{ cli }}"
|
provider: "{{ cli }}"
|
||||||
state: absent
|
state: absent
|
||||||
register: result
|
register: result
|
||||||
|
|
|
@ -7,11 +7,15 @@
|
||||||
- set_fact: testint2="{{ nxos_int2 }}"
|
- set_fact: testint2="{{ nxos_int2 }}"
|
||||||
- set_fact: testint3="{{ nxos_int3 }}"
|
- set_fact: testint3="{{ nxos_int3 }}"
|
||||||
|
|
||||||
|
- set_fact: ipv6_address=""
|
||||||
|
- set_fact: ipv6_address="33:db::2/8"
|
||||||
|
when: ipv6_supported
|
||||||
|
|
||||||
- name: Setup - Remove address from interfaces aggregate
|
- name: Setup - Remove address from interfaces aggregate
|
||||||
nxos_l3_interface:
|
nxos_l3_interface:
|
||||||
aggregate:
|
aggregate:
|
||||||
- { name: "{{ testint2 }}", ipv4: 192.168.22.1/24 }
|
- { name: "{{ testint2 }}", ipv4: 192.168.22.1/24 }
|
||||||
- { name: "{{ testint3 }}", ipv4: 192.168.20.1/24, ipv6: "33:db::2/8" }
|
- { name: "{{ testint3 }}", ipv4: 192.168.20.1/24, ipv6: "{{ ipv6_address }}" }
|
||||||
provider: "{{ nxapi }}"
|
provider: "{{ nxapi }}"
|
||||||
state: absent
|
state: absent
|
||||||
ignore_errors: yes
|
ignore_errors: yes
|
||||||
|
@ -59,7 +63,7 @@
|
||||||
nxos_l3_interface: &conf_agg
|
nxos_l3_interface: &conf_agg
|
||||||
aggregate:
|
aggregate:
|
||||||
- { name: "{{ testint2 }}", ipv4: 192.168.22.1/24 }
|
- { name: "{{ testint2 }}", ipv4: 192.168.22.1/24 }
|
||||||
- { name: "{{ testint3 }}", ipv4: 192.168.20.1/24, ipv6: "33:db::2/8" }
|
- { name: "{{ testint3 }}", ipv4: 192.168.20.1/24, ipv6: "{{ ipv6_address }}" }
|
||||||
provider: "{{ nxapi }}"
|
provider: "{{ nxapi }}"
|
||||||
register: result
|
register: result
|
||||||
|
|
||||||
|
@ -79,7 +83,7 @@
|
||||||
nxos_l3_interface: &rm_agg
|
nxos_l3_interface: &rm_agg
|
||||||
aggregate:
|
aggregate:
|
||||||
- { name: "{{ testint2 }}", ipv4: 192.168.22.1/24 }
|
- { name: "{{ testint2 }}", ipv4: 192.168.22.1/24 }
|
||||||
- { name: "{{ testint3 }}", ipv4: 192.168.20.1/24, ipv6: "33:db::2/8" }
|
- { name: "{{ testint3 }}", ipv4: 192.168.20.1/24, ipv6: "{{ ipv6_address }}" }
|
||||||
provider: "{{ nxapi }}"
|
provider: "{{ nxapi }}"
|
||||||
state: absent
|
state: absent
|
||||||
register: result
|
register: result
|
||||||
|
|
|
@ -31,6 +31,14 @@
|
||||||
- "interface {{ testint1 }}"
|
- "interface {{ testint1 }}"
|
||||||
- "interface {{ testint2 }}"
|
- "interface {{ testint2 }}"
|
||||||
|
|
||||||
|
- name: Put interface in L2 mode
|
||||||
|
nxos_interface:
|
||||||
|
aggregate:
|
||||||
|
- { name: "{{testint1}}" }
|
||||||
|
- { name: "{{testint2}}" }
|
||||||
|
mode: layer2
|
||||||
|
when: platform is match("N35")
|
||||||
|
|
||||||
- name: create linkagg
|
- name: create linkagg
|
||||||
nxos_linkagg: &create
|
nxos_linkagg: &create
|
||||||
group: 20
|
group: 20
|
||||||
|
|
|
@ -4,8 +4,9 @@
|
||||||
when: ansible_connection == "local"
|
when: ansible_connection == "local"
|
||||||
|
|
||||||
- name: Make sure LLDP is not running before tests
|
- name: Make sure LLDP is not running before tests
|
||||||
nxos_config:
|
nxos_feature:
|
||||||
lines: no feature lldp
|
feature: lldp
|
||||||
|
state: disabled
|
||||||
provider: "{{ connection }}"
|
provider: "{{ connection }}"
|
||||||
|
|
||||||
- name: Enable LLDP service
|
- name: Enable LLDP service
|
||||||
|
|
|
@ -4,8 +4,9 @@
|
||||||
when: ansible_connection == "local"
|
when: ansible_connection == "local"
|
||||||
|
|
||||||
- name: Make sure LLDP is not running before tests
|
- name: Make sure LLDP is not running before tests
|
||||||
nxos_config:
|
nxos_feature:
|
||||||
lines: no feature lldp
|
feature: lldp
|
||||||
|
state: disabled
|
||||||
provider: "{{ connection }}"
|
provider: "{{ connection }}"
|
||||||
|
|
||||||
- name: Enable LLDP service
|
- name: Enable LLDP service
|
||||||
|
|
|
@ -105,3 +105,7 @@
|
||||||
- debug: msg="IMAGE VERSION {{ image_version }}"
|
- debug: msg="IMAGE VERSION {{ image_version }}"
|
||||||
- debug: msg="IMAGE TAG {{ imagetag }}"
|
- debug: msg="IMAGE TAG {{ imagetag }}"
|
||||||
- debug: msg="IMAGE MR {{ imagemr }}"
|
- debug: msg="IMAGE MR {{ imagemr }}"
|
||||||
|
|
||||||
|
- set_fact: ipv6_supported="true"
|
||||||
|
- set_fact: ipv6_supported="false"
|
||||||
|
when: platform is match("N35")
|
||||||
|
|
|
@ -69,9 +69,9 @@ class TestNxosFeatureModule(TestNxosModule):
|
||||||
def test_nxos_feature_enable(self):
|
def test_nxos_feature_enable(self):
|
||||||
set_module_args(dict(feature='nve', state='enabled'))
|
set_module_args(dict(feature='nve', state='enabled'))
|
||||||
result = self.execute_module(changed=True)
|
result = self.execute_module(changed=True)
|
||||||
self.assertEqual(result['commands'], ['feature nv overlay'])
|
self.assertEqual(result['commands'], ['terminal dont-ask', 'feature nv overlay'])
|
||||||
|
|
||||||
def test_nxos_feature_disable(self):
|
def test_nxos_feature_disable(self):
|
||||||
set_module_args(dict(feature='ospf', state='disabled'))
|
set_module_args(dict(feature='ospf', state='disabled'))
|
||||||
result = self.execute_module(changed=True)
|
result = self.execute_module(changed=True)
|
||||||
self.assertEqual(result['commands'], ['no feature ospf'])
|
self.assertEqual(result['commands'], ['terminal dont-ask', 'no feature ospf'])
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue