a716fe97e3
* Fix nxos_switchport (#37328) (cherry picked from commitff57fd0bb4
) * Fix nxos_l2_interface and test typo (#37336) Signed-off-by: Trishna Guha <trishnaguha17@gmail.com> (cherry picked from commitba5e562c76
) * fix ios_l2_interface (#37389) Signed-off-by: Trishna Guha <trishnaguha17@gmail.com> (cherry picked from commitdd37857884
) * fix required args for nxos_snapshot and docs improvement (#37232) Signed-off-by: Trishna Guha <trishnaguha17@gmail.com> (cherry picked from commita10df8b0b5
) * add nxos_snapshot test for missing required param (#37248) Signed-off-by: Trishna Guha <trishnaguha17@gmail.com> (cherry picked from commit2501834c42
) * Ensure network_cli nxos test is run only once - remove unnecessary files (#37462) Signed-off-by: Trishna Guha <trishnaguha17@gmail.com> (cherry picked from commit957ab02e52
) * Integration Tests only: nxos_user (#37852) * add new integration file to nxos_user * fix shippable error * change nxapi to connection * review comments (cherry picked from commit63da50e1d8
) * fix UnboundLocalError nxos_bgp_af module (#37610) Signed-off-by: Trishna Guha <trishnaguha17@gmail.com> (cherry picked from commit00abe6dbe7
) * Fix nxos_vrf issues (#37092) * fix nxos_vrf issues * fix doc (cherry picked from commitdc61f4c6b1
) * fix nxos_vrf_af issues (#37211) (cherry picked from commit74e79d9f5e
) * fix nxos_udld issues (#37418) (cherry picked from commit05b266cc66
) * fix nxos_vlan issues (#38008) (cherry picked from commit6f2cb28bb9
) * add changelog Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
165 lines
3.8 KiB
YAML
165 lines
3.8 KiB
YAML
---
|
|
- debug: msg="START connection={{ ansible_connection }} nxos_l2_interface sanity test"
|
|
- debug: msg="Using provider={{ connection.transport }}"
|
|
when: ansible_connection == "local"
|
|
|
|
# Select interface for test
|
|
- set_fact: intname="{{ nxos_int1 }}"
|
|
|
|
- name: "Interface selected for this test"
|
|
debug: msg="{{ intname }}"
|
|
|
|
- name: "Setup interface"
|
|
nxos_config: &default
|
|
lines:
|
|
- "default interface {{ intname }}"
|
|
provider: "{{ connection }}"
|
|
ignore_errors: yes
|
|
|
|
- name: Setup - Ensure interface is layer2
|
|
nxos_interface:
|
|
interface: "{{ intname }}"
|
|
mode: layer2
|
|
provider: "{{ connection }}"
|
|
|
|
- name: "Setup vlans"
|
|
nxos_vlan:
|
|
vlan_range: "5-10,20"
|
|
provider: "{{ connection }}"
|
|
|
|
- block:
|
|
- name: Ensure interface is in its default switchport state
|
|
nxos_l2_interface: &def_swi
|
|
name: "{{ intname }}"
|
|
state: unconfigured
|
|
provider: "{{ connection }}"
|
|
|
|
- name: Ensure interface is configured for access vlan 20
|
|
nxos_l2_interface: &acc_vl
|
|
name: "{{ intname }}"
|
|
mode: access
|
|
access_vlan: 20
|
|
provider: "{{ connection }}"
|
|
register: result
|
|
|
|
- assert: &true
|
|
that:
|
|
- "result.changed == true"
|
|
|
|
- name: Sleep for 2 seconds on Fretta Platform
|
|
wait_for: timeout=2
|
|
when: platform is match("N9K-F")
|
|
|
|
- name: "access vlan Idempotence"
|
|
nxos_l2_interface: *acc_vl
|
|
register: result
|
|
|
|
- assert: &false
|
|
that:
|
|
- "result.changed == false"
|
|
|
|
- name: Ensure interface only has vlans 5-10 as trunk vlans
|
|
nxos_l2_interface: &tr_vl
|
|
name: "{{ intname }}"
|
|
mode: trunk
|
|
native_vlan: 10
|
|
trunk_allowed_vlans: 5-10
|
|
provider: "{{ connection }}"
|
|
register: result
|
|
|
|
- assert: *true
|
|
|
|
- name: "trunk vlan Idempotence"
|
|
nxos_l2_interface: *tr_vl
|
|
register: result
|
|
|
|
- assert: *false
|
|
|
|
- name: Ensure interface is a trunk port and ensure 2-50 are being tagged (doesn't mean others aren't also being tagged)
|
|
nxos_l2_interface: &tag
|
|
name: "{{ intname }}"
|
|
mode: trunk
|
|
native_vlan: 10
|
|
trunk_vlans: 2-50
|
|
provider: "{{ connection }}"
|
|
register: result
|
|
|
|
- assert: *true
|
|
|
|
- name: "tag vlan Idempotence"
|
|
nxos_l2_interface: *tag
|
|
register: result
|
|
|
|
- assert: *false
|
|
|
|
- name: Remove full trunk vlan range 2-50
|
|
nxos_l2_interface: &no_tag
|
|
name: "{{ intname }}"
|
|
mode: trunk
|
|
trunk_vlans: 2-50
|
|
state: absent
|
|
provider: "{{ connection }}"
|
|
register: result
|
|
|
|
- assert: *true
|
|
|
|
- name: Check Idempotence Remove full trunk vlan range 2-50
|
|
nxos_l2_interface: *no_tag
|
|
register: result
|
|
|
|
- assert: *false
|
|
|
|
- name: Reconfigure interface trunk port and ensure 2-50 are being tagged
|
|
nxos_l2_interface: *tag
|
|
register: result
|
|
|
|
- assert: *true
|
|
|
|
- name: Check Idempotence Reconfigure interface trunk port and ensure 2-50 are being tagged
|
|
nxos_l2_interface: *tag
|
|
register: result
|
|
|
|
- assert: *false
|
|
|
|
- name: Remove partial trunk vlan range 30-4094 are removed
|
|
nxos_l2_interface: &partial
|
|
name: "{{ intname }}"
|
|
mode: trunk
|
|
trunk_vlans: 30-4094
|
|
state: absent
|
|
provider: "{{ connection }}"
|
|
register: result
|
|
|
|
- assert: *true
|
|
|
|
- name: Check Idempotence Remove partial trunk vlan range 30-4094 are removed
|
|
nxos_l2_interface: *partial
|
|
register: result
|
|
|
|
- assert: *false
|
|
|
|
- name: put interface default state
|
|
nxos_l2_interface: *def_swi
|
|
register: result
|
|
|
|
- assert: *true
|
|
|
|
- name: "default state idempotence"
|
|
nxos_l2_interface: *def_swi
|
|
register: result
|
|
|
|
- assert: *false
|
|
|
|
always:
|
|
- name: "remove vlans"
|
|
nxos_vlan:
|
|
vlan_range: "5-10,20"
|
|
state: absent
|
|
provider: "{{ connection }}"
|
|
ignore_errors: yes
|
|
|
|
- name: "default interface"
|
|
nxos_config: *default
|
|
ignore_errors: yes
|
|
|
|
- debug: msg="END connection={{ ansible_connection }} nxos_l2_interface sanity test"
|