fix nxos_vlan issues (#38008)

This commit is contained in:
saichint 2018-03-29 03:26:33 -07:00 committed by Trishna Guha
parent 2ad7d79985
commit 6f2cb28bb9
3 changed files with 187 additions and 35 deletions

View file

@ -7,6 +7,7 @@
lines:
- no vlan 100
provider: "{{ connection }}"
ignore_errors: yes
- name: setup - remove vlan from interfaces used in test(part1)
nxos_config:

View file

@ -3,6 +3,9 @@
- debug: msg="Using provider={{ connection.transport }}"
when: ansible_connection == "local"
- set_fact: testint1="{{ nxos_int1 }}"
- set_fact: testint2="{{ nxos_int2 }}"
- block:
- name: "Enable feature vn segment"
nxos_config:
@ -44,7 +47,7 @@
- assert: *true
when: platform is search('N9K')
- name: "web Idempotence"
- name: "web1 Idempotence"
nxos_vlan: *web1
register: result
when: platform is search('N9K')
@ -52,8 +55,30 @@
- assert: *false
when: platform is search('N9K')
- name: Ensure VLAN 50 exists with the name WEB and is in the shutdown state
- name: change name and vni to default
nxos_vlan: &web2
vlan_id: 50
vlan_state: active
admin_state: up
name: default
mapped_vni: default
provider: "{{ connection }}"
register: result
when: platform is search('N9K')
- assert: *true
when: platform is search('N9K')
- name: "web2 Idempotence"
nxos_vlan: *web2
register: result
when: platform is search('N9K')
- assert: *false
when: platform is search('N9K')
- name: Ensure VLAN 50 exists with the name WEB and is in the shutdown state
nxos_vlan: &web3
vlan_id: 50
vlan_state: suspend
admin_state: down
@ -65,14 +90,74 @@
- assert: *true
when: platform is search('N3K|N7K')
- name: "web Idempotence"
nxos_vlan: *web2
- name: "web3 Idempotence"
nxos_vlan: *web3
register: result
when: platform is search('N3K|N7K')
- assert: *false
when: platform is search('N3K|N7K')
- name: Change name to default
nxos_vlan: &web4
vlan_id: 50
vlan_state: active
admin_state: up
name: default
provider: "{{ connection }}"
register: result
when: platform is search('N3K|N7K')
- assert: *true
when: platform is search('N3K|N7K')
- name: "web4 Idempotence"
nxos_vlan: *web4
register: result
when: platform is search('N3K|N7K')
- assert: *false
when: platform is search('N3K|N7K')
# Uncomment this once the get_capabilities() work on nxapi as well
# - name: Change mode
# nxos_vlan: &mode1
# vlan_id: 50
# mode: fabricpath
# provider: "{{ connection }}"
# register: result
# when: platform is search('N5k|N7K')
#
# - assert: *true
# when: platform is search('N5k|N7K')
#
# - name: "mode1 Idempotence"
# nxos_vlan: *mode1
# register: result
# when: platform is search('N5k|N7K')
#
# - assert: *false
# when: platform is search('N5k|N7K')
#
# - name: Change mode again
# nxos_vlan: &mode2
# vlan_id: 50
# mode: ce
# provider: "{{ connection }}"
# register: result
# when: platform is search('N5k|N7K')
#
# - assert: *true
# when: platform is search('N5k|N7K')
#
# - name: "mode2 Idempotence"
# nxos_vlan: *mode2
# register: result
# when: platform is search('N5k|N7K')
#
# - assert: *false
# when: platform is search('N5k|N7K')
- name: Ensure VLAN is NOT on the device
nxos_vlan: &no_vlan
vlan_id: 50
@ -88,7 +173,44 @@
- assert: *false
- name: Add interfaces to vlan
nxos_vlan: &addint
vlan_id: 101
vlan_state: suspend
interfaces:
- "{{ testint1 }}"
- "{{ testint2 }}"
provider: "{{ connection }}"
register: result
- assert: *true
- name: "Addint idempotence"
nxos_vlan: *addint
register: result
- assert: *false
- name: Remove interfaces from vlan
nxos_vlan: &remint
vlan_id: 101
interfaces: default
provider: "{{ connection }}"
register: result
- assert: *true
- name: "Remint idempotence"
nxos_vlan: *remint
register: result
- assert: *false
always:
- name: Remove int from vlan
nxos_vlan: *remint
ignore_errors: yes
- name: remove vlans
nxos_vlan:
vlan_range: "2-10,20,50,55-60,100-150"