157 lines
3.3 KiB
YAML
157 lines
3.3 KiB
YAML
---
|
|
- debug: msg="START cli/intent.yaml on connection={{ ansible_connection }}"
|
|
|
|
# To be able to run the lldp test we need to have a neighbor configured to talk to
|
|
# In DCI & Zuul we (currently) only spin up a single network VM, so we can't configure a neighbor
|
|
# In the future when we have multi-network-nodes running we can run these tests again
|
|
# https://github.com/ansible/ansible/issues/39667
|
|
|
|
- name: Detect if we have existing lldp neighbors configured
|
|
vyos_command:
|
|
commands:
|
|
- show lldp neighbors detail
|
|
register: neighbors_out
|
|
|
|
- name: Should we run lldp tests?
|
|
set_fact:
|
|
run_lldp_tests: "'PortDescr: eth0' in neighbors_out.stdout[0]"
|
|
|
|
- name: Enable LLDP service
|
|
vyos_lldp:
|
|
state: present
|
|
when: run_lldp_tests
|
|
|
|
- name: Create LLDP configuration
|
|
vyos_lldp_interface:
|
|
name: eth1
|
|
state: present
|
|
when: run_lldp_tests
|
|
|
|
- name: Setup (interface is up)
|
|
vyos_interface:
|
|
name: eth1
|
|
enabled: true
|
|
state: present
|
|
register: result
|
|
|
|
- name: Check intent arguments
|
|
vyos_interface:
|
|
name: eth1
|
|
state: up
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result.failed == false"
|
|
|
|
- name: Check lldp neighbors intent arguments
|
|
vyos_interface:
|
|
name: eth0
|
|
neighbors:
|
|
- port: eth0
|
|
when: run_lldp_tests
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result.failed == false"
|
|
when: run_lldp_tests
|
|
|
|
- name: Check intent arguments (failed condition)
|
|
vyos_interface:
|
|
name: eth1
|
|
state: down
|
|
ignore_errors: true
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result.failed == true"
|
|
- "'state eq(down)' in result.failed_conditions"
|
|
|
|
- name: Check lldp neighbors intent arguments (failed)
|
|
vyos_interface:
|
|
name: eth0
|
|
neighbors:
|
|
- port: dummy_port
|
|
host: dummy_host
|
|
ignore_errors: true
|
|
when: run_lldp_tests
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result.failed == true"
|
|
- "'host dummy_host' in result.failed_conditions"
|
|
- "'port dummy_port' in result.failed_conditions"
|
|
when: run_lldp_tests
|
|
|
|
- name: Config + intent
|
|
vyos_interface:
|
|
name: eth1
|
|
enabled: false
|
|
state: down
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result.failed == false"
|
|
|
|
- name: Config + intent (fail)
|
|
vyos_interface:
|
|
name: eth1
|
|
enabled: false
|
|
state: up
|
|
ignore_errors: true
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result.failed == true"
|
|
- "'state eq(up)' in result.failed_conditions"
|
|
|
|
- name: Aggregate config + intent (pass)
|
|
vyos_interface:
|
|
aggregate:
|
|
- name: eth1
|
|
enabled: true
|
|
state: up
|
|
ignore_errors: true
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result.failed == false"
|
|
|
|
- name: Check lldp neighbors intent aggregate arguments
|
|
vyos_interface:
|
|
aggregate:
|
|
- name: eth0
|
|
neighbors:
|
|
- port: eth0
|
|
when: run_lldp_tests
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result.failed == false"
|
|
when: run_lldp_tests
|
|
|
|
- name: Check lldp neighbors intent aggregate arguments (failed)
|
|
vyos_interface:
|
|
aggregate:
|
|
- name: eth0
|
|
neighbors:
|
|
- port: eth0
|
|
- port: dummy_port
|
|
host: dummy_host
|
|
ignore_errors: true
|
|
when: run_lldp_tests
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result.failed == true"
|
|
- "'host dummy_host' in result.failed_conditions"
|
|
- "'port dummy_port' in result.failed_conditions"
|
|
when: run_lldp_tests
|