ansible/test/integration/targets/nxos_ospf_vrf/tests/common/sanity.yaml
Chris Van Heuveln a568e018be nxos_ospf_vrf:sanity: ignore no default-metric idempotence tests when I7 images (#55615)
* nxos_ospf_vrf:sanity: ignore no default-metric idempotence tests when I7 images

This is a sanity test cleanup to handle a known image bug with (N9K) I7 images.
The I7 image rejects 'no default-metric' configs, so we're skipping the idempotence
tests that involve this bug.

Tested on N9K images: 9.2(2), 7.0(3)I7, 7.0(3)I2

* simplify check for I7
2019-04-24 17:41:48 +05:30

139 lines
3.1 KiB
YAML

---
- debug: msg="START connection={{ ansible_connection }} nxos_ospf_vrf sanity test"
- debug: msg="Using provider={{ connection.transport }}"
when: ansible_connection == "local"
- set_fact: def_met_default="default"
# CSCvi74876 Cannot remove default-metric
when: imagetag is not search("I7")
- name: "Setup: disable feature OSPF for initial cleanup"
nxos_feature:
feature: ospf
provider: "{{ connection }}"
state: disabled
ignore_errors: yes
- name: "Enable feature OSPF"
nxos_feature:
feature: ospf
provider: "{{ connection }}"
state: enabled
ignore_errors: yes
- block:
- name: Configure ospf vrf
nxos_ospf_vrf: &config
ospf: 1
router_id: 192.0.2.1
timer_throttle_spf_start: 50
timer_throttle_spf_hold: 1000
timer_throttle_spf_max: 2000
timer_throttle_lsa_start: 60
timer_throttle_lsa_hold: 1100
timer_throttle_lsa_max: 3000
vrf: test
passive_interface: true
provider: "{{ connection }}"
state: present
register: result
- assert: &true
that:
- "result.changed == true"
- name: "Check Idempotence"
nxos_ospf_vrf: *config
register: result
- assert: &false
that:
- "result.changed == false"
- name: Configure ospf vrf
nxos_ospf_vrf: &config1
ospf: 2
auto_cost: 5000
timer_throttle_spf_hold: 1100
timer_throttle_lsa_hold: 2220
timer_throttle_lsa_max: 2222
default_metric: 1000
log_adjacency: log
vrf: default
passive_interface: true
provider: "{{ connection }}"
state: present
register: result
- assert: *true
- name: "Check Idempotence"
nxos_ospf_vrf: *config1
register: result
- assert: *false
- name: Configure ospf vrf
nxos_ospf_vrf: &config2
ospf: 2
auto_cost: default
default_metric: "{{def_met_default|default(omit)}}"
log_adjacency: default
timer_throttle_spf_hold: default
passive_interface: false
vrf: default
provider: "{{ connection }}"
state: present
register: result
- assert: *true
- name: "Check Idempotence"
nxos_ospf_vrf: *config2
register: result
- assert: *false
- name: Unconfigure ospf vrf
nxos_ospf_vrf: &unconfig1
ospf: 2
vrf: default
provider: "{{ connection }}"
state: absent
register: result
- assert: *true
- name: "Check Idempotence"
nxos_ospf_vrf: *unconfig1
register: result
- assert: *false
when: def_met_default is defined
- name: Unconfigure ospf vrf
nxos_ospf_vrf: &unconfig
ospf: 1
vrf: test
provider: "{{ connection }}"
state: absent
register: result
- assert: *true
- name: "Check Idempotence"
nxos_ospf_vrf: *unconfig
register: result
- assert: *false
when: def_met_default is defined
always:
- name: "Disable feature OSPF"
nxos_feature:
feature: ospf
provider: "{{ connection }}"
state: disabled
ignore_errors: yes
- debug: msg="END connection={{ ansible_connection }} nxos_ospf_vrf sanity test"