You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ansible/test/integration/targets/nxos_bgp_af/tests/common/sanity.yaml

152 lines
3.4 KiB
YAML

---
- debug: msg="START connection={{ ansible_connection }} nxos_bgp_af sanity test"
- debug: msg="Using provider={{ connection.transport }}"
when: ansible_connection == "local"
- set_fact: advertise_l2vpn_evpn="true"
when: platform is search('N9K')
- name: "Enable feature BGP"
nxos_feature:
feature: bgp
state: enabled
provider: "{{ connection }}"
ignore_errors: yes
- name: "Enable feature nv overlay"
nxos_feature:
feature: nv overlay
state: enabled
provider: "{{ connection }}"
ignore_errors: yes
- name: "Setup"
nxos_bgp: &remove
asn: 65535
state: absent
provider: "{{ connection }}"
ignore_errors: yes
- block:
- name: "Enable nv overlay evpn"
nxos_config:
lines:
- nv overlay evpn
provider: "{{ connection }}"
when: platform is search('N9K')
- name: "Configure BGP_AF defaults"
nxos_bgp_af: &configure_default
asn: 65535
vrf: TESTING
afi: ipv4
safi: unicast
advertise_l2vpn_evpn: "{{advertise_l2vpn_evpn|default(omit)}}"
state: present
provider: "{{ connection }}"
register: result
- assert: &true
that:
- "result.changed == true"
- name: "Check Idempotence"
nxos_bgp_af: *configure_default
register: result
- assert: &false
that:
- "result.changed == false"
- name: "Remove BGP"
nxos_bgp: *remove
register: result
- assert: *true
- name: "Check Idempotence"
nxos_bgp: *remove
register: result
- assert: *false
- name: "Configure BGP_AF non defaults"
nxos_bgp_af: &configure_non_default
asn: 65535
vrf: TESTING
afi: ipv4
safi: unicast
additional_paths_install: true
additional_paths_receive: true
additional_paths_selection: RouteMap
additional_paths_send: true
advertise_l2vpn_evpn: "{{advertise_l2vpn_evpn|default(omit)}}"
client_to_client: false
dampen_igp_metric: 200
dampening_half_time: 1
dampening_max_suppress_time: 4
dampening_reuse_time: 2
dampening_suppress_time: 3
default_information_originate: true
default_metric: 50
distance_ebgp: 30
distance_ibgp: 60
distance_local: 90
maximum_paths: 9
maximum_paths_ibgp: 9
next_hop_route_map: RouteMap
suppress_inactive: true
table_map: RouteMap
table_map_filter: true
state: present
provider: "{{ connection }}"
register: result
- assert: *true
- name: "Check Idempotence"
nxos_bgp_af: *configure_non_default
register: result
- assert: *false
- name: "Remove BGP"
nxos_bgp: *remove
register: result
- assert: *true
- name: "Check Idempotence"
nxos_bgp: *remove
register: result
- assert: *false
rescue:
- name: "Cleanup BGP"
nxos_bgp: *remove
ignore_errors: yes
always:
- name: "Disable feature bgp"
nxos_feature: &disable_bgp
feature: bgp
state: disabled
provider: "{{ connection }}"
- name: "Disable feature nv overlay"
nxos_feature: &disable_nvoverlay
feature: nv overlay
state: disabled
provider: "{{ connection }}"
ignore_errors: yes
- name: "Remove nv overlay evpn"
nxos_config:
lines:
- no nv overlay evpn
provider: "{{ connection }}"
when: platform is search('N9K')
- debug: msg="END connection={{ ansible_connection }} nxos_bgp_af sanity test"