ansible/test/integration/targets/vyos_interfaces/tests/cli/merged.yaml

59 lines
1.8 KiB
YAML

---
- debug:
msg: "START vyos_interfaces merged integration tests on connection={{ ansible_connection }}"
- include_tasks: _remove_config.yaml
- block:
- name: Merge the provided configuration with the exisiting running configuration
vyos_interfaces: &merged
config:
- name: eth1
description: "Configured by Ansible - Interface 1"
mtu: 1500
speed: auto
duplex: auto
vifs:
- vlan_id: 100
description: "Eth1 - VIF 100"
mtu: 400
- vlan_id: 101
description: "Eth1 - VIF 101"
- name: eth2
description: "Configured by Ansible - Interface 2 (ADMIN DOWN)"
mtu: 600
enabled: false
state: merged
register: result
- name: Assert that before dicts were correctly generated
assert:
that: "{{ merged['before'] | symmetric_difference(result['before']) |length == 0 }}"
- name: Assert that correct set of commands were generated
assert:
that:
- "{{ merged['commands'] | symmetric_difference(result['commands']) |length == 0 }}"
- name: Assert that after dicts was correctly generated
assert:
that:
- "{{ merged['after'] | symmetric_difference(result['after']) |length == 0 }}"
- name: Merge the provided configuration with the existing running configuration (IDEMPOTENT)
vyos_interfaces: *merged
register: result
- name: Assert that the previous task was idempotent
assert:
that:
- "result['changed'] == false"
- name: Assert that before dicts were correctly generated
assert:
that:
- "{{ merged['after'] | symmetric_difference(result['before']) |length == 0 }}"
always:
- include_tasks: _remove_config.yaml