nxos_pim_rp_address: update sanity test to work with legacy N3K (#53471)

Test yaml fixes for n3048:

* 3048 does not support bidir option
* 3048 cannot remove rp-address if prefix-list/route-map is present
  * yes: no ip pim rp-address x.x.x.x
  *  no: no ip pim rp-address x.x.x.x prefix-list foo
  *  no: no ip pim rp-address x.x.x.x route-map bar

This test now passes on N9k/N7k/N6k/N3k.
pull/53521/head
Chris Van Heuveln 7 years ago committed by Trishna Guha
parent 6e198487c9
commit ea0ef3b2e1

@ -3,9 +3,14 @@
- debug: msg="Using provider={{ connection.transport }}" - debug: msg="Using provider={{ connection.transport }}"
when: ansible_connection == "local" when: ansible_connection == "local"
- set_fact: bidir="true" - block:
- set_fact: bidir="false" # N3L does not support bidir
when: platform is match("N3L") - set_fact: bidir_true="true"
- set_fact: bidir_false="false"
# N3L can only remove rpa, cannot remove rpa+prefixlist or rpa+routemap
- set_fact: pim_prefix_list="pim_prefix_list"
- set_fact: pim_route_map="pim_route_map"
when: platform is not match("N3L")
- block: - block:
- name: "Disable feature PIM" - name: "Disable feature PIM"
@ -20,11 +25,12 @@
provider: "{{ connection }}" provider: "{{ connection }}"
state: enabled state: enabled
- name: Configure rp_address + group_list - name: 1.0 Configure rp_address + group_list
# This test should always run regardless of bidir support
nxos_pim_rp_address: &configgl nxos_pim_rp_address: &configgl
rp_address: "10.1.1.20" rp_address: "10.1.1.1"
group_list: "224.0.0.0/8" group_list: "224.0.0.0/8"
bidir: "{{ bidir }}" bidir: "{{ bidir_true|default(omit) }}"
provider: "{{ connection }}" provider: "{{ connection }}"
state: present state: present
register: result register: result
@ -33,7 +39,7 @@
that: that:
- "result.changed == true" - "result.changed == true"
- name: Check idempotence rp_address + group_list - name: 1.0 Idempotence rp_address + group_list
nxos_pim_rp_address: *configgl nxos_pim_rp_address: *configgl
register: result register: result
@ -41,66 +47,60 @@
that: that:
- "result.changed == false" - "result.changed == false"
- name: Configure rp_address + group_list remove bidir - block: # bidir test
nxos_pim_rp_address: &configglnb - name: 1.1 Configure rp_address + group_list (bidir_false)
rp_address: "10.1.1.20" nxos_pim_rp_address: &config11
group_list: "224.0.0.0/8" rp_address: "10.1.1.1"
bidir: False group_list: "224.0.0.0/8"
provider: "{{ connection }}" bidir: false
state: present provider: "{{ connection }}"
register: result state: present
when: platform is not match("N3L") register: result
- assert: *true - assert: *true
when: platform is not match("N3L")
- name: Check idempotence rp_address + group_list remove bidir - name: 1.1 Idempotence rp_address + group_list (bidir_false)
nxos_pim_rp_address: *configglnb nxos_pim_rp_address: *config11
register: result register: result
when: platform is not match("N3L")
- assert: *false - assert: *false
when: platform is not match("N3L")
- name: Configure rp_address + bidir - name: 1.2 Configure rp_address (bidir_true)
nxos_pim_rp_address: &configbi nxos_pim_rp_address: &config12
rp_address: "10.1.1.20" rp_address: "10.1.1.1"
bidir: "{{ bidir }}" bidir: true
provider: "{{ connection }}" provider: "{{ connection }}"
state: present state: present
register: result register: result
- assert: *true - assert: *true
- name: Check idempotence rp_address + bidir - name: 1.2 Idempotence rp_address (bidir_true)
nxos_pim_rp_address: *configbi nxos_pim_rp_address: *config12
register: result register: result
- assert: *false - assert: *false
- name: Configure rp_address remove bidir - name: 1.3 Configure rp_address (bidir_false)
nxos_pim_rp_address: &confignbi nxos_pim_rp_address: &config13
rp_address: "10.1.1.20" rp_address: "10.1.1.1"
bidir: False bidir: false
provider: "{{ connection }}" provider: "{{ connection }}"
state: present state: present
register: result register: result
when: platform is not match("N3L")
- assert: *true - assert: *true
when: platform is not match("N3L")
- name: Check idempotence rp_address remove bidir - name: 1.3 Idempotence rp_address (bidir_false)
nxos_pim_rp_address: *confignbi nxos_pim_rp_address: *config13
register: result register: result
when: platform is not match("N3L")
- assert: *false - assert: *false
when: platform is not match("N3L") when: bidir_true is defined
- name: Remove rp_address + group_list - name: 1.4 Remove rp_address + group_list
nxos_pim_rp_address: &configglr nxos_pim_rp_address: &config14
rp_address: "10.1.1.20" rp_address: "10.1.1.1"
group_list: "224.0.0.0/8" group_list: "224.0.0.0/8"
provider: "{{ connection }}" provider: "{{ connection }}"
state: absent state: absent
@ -108,133 +108,114 @@
- assert: *true - assert: *true
- name: Check remove idempotence rp_address + group_list - name: 1.4 Idempotence remove rp_address + group_list
nxos_pim_rp_address: *configglr nxos_pim_rp_address: *config14
register: result
- assert: *false
- name: Remove rp_address
nxos_pim_rp_address: &configbir
rp_address: "10.1.1.20"
provider: "{{ connection }}"
state: absent
register: result
- assert: *true
- name: Check remove idempotence rp_address
nxos_pim_rp_address: *configbir
register: result register: result
- assert: *false - assert: *false
- name: Configure rp_address + prefix_list + bidir - name: 2.0 Configure rp_address + prefix_list (bidir_true)
nxos_pim_rp_address: &configpl nxos_pim_rp_address: &config20
rp_address: "10.1.1.20" rp_address: "10.1.1.2"
prefix_list: "pim_prefix_list" prefix_list: "{{ pim_prefix_list|default(omit) }}"
bidir: "{{ bidir }}" bidir: "{{ bidir_true|default(omit) }}"
provider: "{{ connection }}" provider: "{{ connection }}"
state: present state: present
register: result register: result
- assert: *true - assert: *true
- name: Check idempotence rp_address + prefix_list + bidir - name: 2.0 Idempotence rp_address + prefix_list (bidir_true)
nxos_pim_rp_address: *configpl nxos_pim_rp_address: *config20
register: result register: result
- assert: *false - assert: *false
- name: Configure rp_address + prefix_list - block: # bidir test
nxos_pim_rp_address: &configplnbi - name: 2.1 Configure rp_address + prefix_list (bidir_false)
rp_address: "10.1.1.20" nxos_pim_rp_address: &config21
prefix_list: "pim_prefix_list" rp_address: "10.1.1.2"
bidir: False prefix_list: "{{ pim_prefix_list|default(omit) }}"
provider: "{{ connection }}" bidir: "{{ bidir_false|default(omit) }}"
state: present provider: "{{ connection }}"
register: result state: present
when: platform is not match("N3L") register: result
- assert: *true - assert: *true
when: platform is not match("N3L")
- name: 2.1 Idempotence rp_address + prefix_list (bidir_false)
- name: Check idempotence rp_address + prefix_list nxos_pim_rp_address: *config21
nxos_pim_rp_address: *configplnbi register: result
register: result
when: platform is not match("N3L") - assert: *false
when: bidir_false is defined
- assert: *false
when: platform is not match("N3L") - name: 2.2 Remove rp_address + prefix_list (bidir_false)
nxos_pim_rp_address: &config22
- name: Remove rp_address + prefix_list rp_address: "10.1.1.2"
nxos_pim_rp_address: &configplr prefix_list: "{{ pim_prefix_list|default(omit)}}"
rp_address: "10.1.1.20" bidir: "{{ bidir_false|default(omit)}}"
prefix_list: "pim_prefix_list"
bidir: False
provider: "{{ connection }}" provider: "{{ connection }}"
state: absent state: absent
register: result register: result
- assert: *true - assert: *true
- name: Check remove idempotence rp_address + prefix_list - name: 2.2 Idempotence remove rp_address + prefix_list (bidir_false)
nxos_pim_rp_address: *configplr nxos_pim_rp_address: *config22
register: result
- assert: *false
- name: Configure rp_address + route_map + bidir
nxos_pim_rp_address: &configrm
rp_address: "10.1.1.20"
route_map: "pim_routemap"
bidir: "{{ bidir }}"
provider: "{{ connection }}"
state: present
register: result
- assert: *true
- name: Check idempotence rp_address + route_map + bidir
nxos_pim_rp_address: *configrm
register: result register: result
- assert: *false - assert: *false
- name: Configure rp_address + route_map - name: 3.0 Configure rp_address + route_map + (bidir_true)
nxos_pim_rp_address: &configrmnbi nxos_pim_rp_address: &config30
rp_address: "10.1.1.20" rp_address: "10.1.1.3"
route_map: "pim_routemap" route_map: "{{ pim_route_map|default(omit)}}"
bidir: False bidir: "{{ bidir_true|default(omit) }}"
provider: "{{ connection }}" provider: "{{ connection }}"
state: present state: present
register: result register: result
when: platform is not match("N3L")
- assert: *true - assert: *true
when: platform is not match("N3L")
- name: Check idempotence rp_address + route_map - name: 3.0 Idempotence rp_address + route_map + (bidir_true)
nxos_pim_rp_address: *configrmnbi nxos_pim_rp_address: *config30
register: result register: result
when: platform is not match("N3L")
- assert: *false - assert: *false
when: platform is not match("N3L")
- name: Remove rp_address + route_map - block: # bidir test
nxos_pim_rp_address: &configrmr - name: 3.1 Configure rp_address + route_map (bidir_false)
rp_address: "10.1.1.20" nxos_pim_rp_address: &config31
route_map: "pim_routemap" rp_address: "10.1.1.3"
bidir: False route_map: "{{ pim_route_map|default(omit)}}"
bidir: "{{ bidir_false|default(omit)}}"
provider: "{{ connection }}"
state: present
register: result
- assert: *true
- name: 3.1 Idempotence rp_address + route_map
nxos_pim_rp_address: *config31
register: result
- assert: *false
when: bidir_false is defined
- name: 3.2 Remove rp_address + route_map (bidir_false)
nxos_pim_rp_address: &config32
rp_address: "10.1.1.3"
route_map: "{{ pim_route_map|default(omit)}}"
bidir: "{{ bidir_false|default(omit)}}"
provider: "{{ connection }}" provider: "{{ connection }}"
state: absent state: absent
register: result register: result
- assert: *true - assert: *true
- name: Check remove idempotence rp_address + route_map - name: 3.2 Idempotence remove rp_address + route_map (bidir_false)
nxos_pim_rp_address: *configrmr nxos_pim_rp_address: *config32
register: result register: result
- assert: *false - assert: *false

@ -1,5 +1,5 @@
--- ---
- name: Enable Feature Privilage - name: Enable Feature Privilege
nxos_config: nxos_config:
lines: lines:
- feature privilege - feature privilege

Loading…
Cancel
Save