fix nxos_vrf_af issues (#37211)
This commit is contained in:
parent
c25a42bef6
commit
74e79d9f5e
2 changed files with 101 additions and 23 deletions
|
@ -124,14 +124,14 @@ def main():
|
|||
|
||||
if current:
|
||||
have = 'route-target both auto evpn' in current
|
||||
want = bool(module.params['route_target_both_auto_evpn'])
|
||||
|
||||
if want and not have:
|
||||
commands.append('address-family %s unicast' % module.params['afi'])
|
||||
commands.append('route-target both auto evpn')
|
||||
elif have and not want:
|
||||
commands.append('address-family %s unicast' % module.params['afi'])
|
||||
commands.append('no route-target both auto evpn')
|
||||
if module.params['route_target_both_auto_evpn'] is not None:
|
||||
want = bool(module.params['route_target_both_auto_evpn'])
|
||||
if want and not have:
|
||||
commands.append('address-family %s unicast' % module.params['afi'])
|
||||
commands.append('route-target both auto evpn')
|
||||
elif have and not want:
|
||||
commands.append('address-family %s unicast' % module.params['afi'])
|
||||
commands.append('no route-target both auto evpn')
|
||||
|
||||
else:
|
||||
commands.append('address-family %s unicast' % module.params['afi'])
|
||||
|
|
|
@ -13,18 +13,20 @@
|
|||
nxos_config:
|
||||
commands: "feature nv overlay"
|
||||
provider: "{{ connection }}"
|
||||
ignore_errors: yes
|
||||
|
||||
- name: Configure nv overlay evpn
|
||||
nxos_config:
|
||||
commands: "nv overlay evpn"
|
||||
provider: "{{ connection }}"
|
||||
ignore_errors: yes
|
||||
|
||||
- block:
|
||||
- name: Configure vrf af
|
||||
nxos_vrf_af: &configure
|
||||
- name: Configure vrf af ipv4
|
||||
nxos_vrf_af: &configure4
|
||||
vrf: ansible
|
||||
afi: ipv4
|
||||
route_target_both_auto_evpn: true
|
||||
route_target_both_auto_evpn: True
|
||||
provider: "{{ connection }}"
|
||||
register: result
|
||||
|
||||
|
@ -33,18 +35,66 @@
|
|||
- "result.changed == true"
|
||||
|
||||
- name: "Conf Idempotence"
|
||||
nxos_vrf_af: *configure
|
||||
nxos_vrf_af: *configure4
|
||||
register: result
|
||||
|
||||
- assert: &false
|
||||
that:
|
||||
- "result.changed == false"
|
||||
|
||||
- name: Remove vrf af
|
||||
nxos_vrf_af: &remove
|
||||
- name: Configure vrf af ipv6
|
||||
nxos_vrf_af: &configure6
|
||||
vrf: ansible
|
||||
afi: ipv6
|
||||
route_target_both_auto_evpn: True
|
||||
provider: "{{ connection }}"
|
||||
register: result
|
||||
|
||||
- assert: *true
|
||||
|
||||
- name: "Conf Idempotence"
|
||||
nxos_vrf_af: *configure6
|
||||
register: result
|
||||
|
||||
- assert: *false
|
||||
|
||||
- name: Remove router target4
|
||||
nxos_vrf_af: &rrt4
|
||||
vrf: ansible
|
||||
afi: ipv4
|
||||
route_target_both_auto_evpn: true
|
||||
route_target_both_auto_evpn: False
|
||||
provider: "{{ connection }}"
|
||||
register: result
|
||||
|
||||
- assert: *true
|
||||
|
||||
- name: "Conf Idempotence"
|
||||
nxos_vrf_af: *rrt4
|
||||
register: result
|
||||
|
||||
- assert: *false
|
||||
|
||||
- name: Remove router target6
|
||||
nxos_vrf_af: &rrt6
|
||||
vrf: ansible
|
||||
afi: ipv6
|
||||
route_target_both_auto_evpn: False
|
||||
provider: "{{ connection }}"
|
||||
register: result
|
||||
|
||||
- assert: *true
|
||||
|
||||
- name: "Conf Idempotence"
|
||||
nxos_vrf_af: *rrt6
|
||||
register: result
|
||||
|
||||
- assert: *false
|
||||
|
||||
- name: Remove vrf af v6
|
||||
nxos_vrf_af: &remove6
|
||||
vrf: ansible
|
||||
afi: ipv6
|
||||
route_target_both_auto_evpn: True
|
||||
state: absent
|
||||
provider: "{{ connection }}"
|
||||
register: result
|
||||
|
@ -55,21 +105,37 @@
|
|||
seconds: 30
|
||||
|
||||
- name: "Remove Idempotence"
|
||||
nxos_vrf_af: *remove
|
||||
nxos_vrf_af: *remove6
|
||||
register: result
|
||||
|
||||
- assert: *false
|
||||
|
||||
always:
|
||||
- name: Remove feature bgp
|
||||
nxos_feature:
|
||||
feature: bgp
|
||||
state: disabled
|
||||
- name: Remove vrf af v4
|
||||
nxos_vrf_af: &remove4
|
||||
vrf: ansible
|
||||
afi: ipv4
|
||||
route_target_both_auto_evpn: True
|
||||
state: absent
|
||||
provider: "{{ connection }}"
|
||||
register: result
|
||||
|
||||
- name: Remove feature nv overlay
|
||||
- assert: *true
|
||||
|
||||
- pause:
|
||||
seconds: 30
|
||||
|
||||
- name: "Remove Idempotence"
|
||||
nxos_vrf_af: *remove4
|
||||
register: result
|
||||
|
||||
- assert: *false
|
||||
|
||||
when: not platform is search("N35")
|
||||
|
||||
always:
|
||||
- name: Remove vrf
|
||||
nxos_config:
|
||||
commands: "no feature nv overlay"
|
||||
commands: "no vrf context ansible"
|
||||
provider: "{{ connection }}"
|
||||
ignore_errors: yes
|
||||
|
||||
|
@ -79,4 +145,16 @@
|
|||
provider: "{{ connection }}"
|
||||
ignore_errors: yes
|
||||
|
||||
- name: Remove feature nv overlay
|
||||
nxos_config:
|
||||
commands: "no feature nv overlay"
|
||||
provider: "{{ connection }}"
|
||||
ignore_errors: yes
|
||||
|
||||
- name: Remove feature bgp
|
||||
nxos_feature:
|
||||
feature: bgp
|
||||
state: disabled
|
||||
provider: "{{ connection }}"
|
||||
|
||||
- debug: msg="END connection={{ ansible_connection }} nxos_vrf_af sanity test"
|
||||
|
|
Loading…
Reference in a new issue