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_hsrp/tests/common/sanity.yaml

165 lines
3.3 KiB
YAML

---
- debug: msg="START connection={{ ansible_connection }} nxos_hsrp sanity test"
- debug: msg="Using provider={{ connection.transport }}"
when: ansible_connection == "local"
# Select interface for test
- set_fact: intname1="{{ nxos_int1 }}"
- set_fact: intname2="{{ nxos_int2 }}"
- block:
- name: "Enable feature hsrp"
nxos_feature:
feature: hsrp
provider: "{{ connection }}"
state: enabled
- name: "change int1 mode"
nxos_config:
commands:
- no switchport
parents:
- "interface {{ intname1 }}"
match: none
provider: "{{ connection }}"
- name: "change int2 mode"
nxos_config:
commands:
- no switchport
parents:
- "interface {{ intname2 }}"
match: none
provider: "{{ connection }}"
- name: "configure nxos_hsrp"
nxos_hsrp: &conf1000
group: 1000
version: 2
vip: 10.1.1.1
priority: 150
interface: "{{ intname1 }}"
preempt: enabled
auth_type: md5
auth_string: "7 1234"
provider: "{{ connection }}"
register: result
- assert: &true
that:
- "result.changed == true"
- name: "Conf Idempotence"
nxos_hsrp: *conf1000
register: result
- assert: &false
that:
- "result.changed == false"
- name: "configure group 100"
nxos_hsrp: &conf100
group: 100
version: 2
vip: 192.0.2.2
priority: 25
interface: "{{ intname1 }}"
preempt: enabled
auth_type: md5
auth_string: "0 1234"
provider: "{{ connection }}"
register: result
- assert: *true
- name: "Conf Idempotence"
nxos_hsrp: *conf100
register: result
- assert: *false
- name: "change group 100"
nxos_hsrp: &chg100
group: 100
version: 2
vip: default
priority: default
interface: "{{ intname1 }}"
preempt: disabled
auth_type: md5
auth_string: "0 1234"
provider: "{{ connection }}"
register: result
- assert: *true
- name: "Conf Idempotence"
nxos_hsrp: *chg100
register: result
- assert: *false
- name: "configure group 200"
nxos_hsrp: &conf200
group: 200
vip: 192.0.2.3
version: 1
interface: "{{ intname2 }}"
auth_type: text
auth_string: "1234"
provider: "{{ connection }}"
register: result
- assert: *true
- name: "Conf Idempotence"
nxos_hsrp: *conf200
register: result
- assert: *false
- name: "change group 200"
nxos_hsrp: &chg200
group: 200
vip: 192.0.2.3
version: 2
interface: "{{ intname2 }}"
auth_type: text
auth_string: default
provider: "{{ connection }}"
register: result
- assert: *true
- name: "Conf Idempotence"
nxos_hsrp: *chg200
register: result
- assert: *false
- name: "remove nxos_hsrp"
nxos_hsrp: &remove
group: 1000
interface: "{{ intname1 }}"
provider: "{{ connection }}"
state: absent
register: result
- assert: *true
- name: "Remove Idempotence"
nxos_hsrp: *remove
register: result
- assert: *false
always:
- name: "Disable feature hsrp"
nxos_feature:
feature: hsrp
provider: "{{ connection }}"
state: disabled
ignore_errors: yes
- debug: msg="END connection={{ ansible_connection }} nxos_hsrp sanity test"