54 lines
1.2 KiB
YAML
54 lines
1.2 KiB
YAML
|
---
|
||
|
- include_tasks: reset_config.yml
|
||
|
|
||
|
- set_fact:
|
||
|
config:
|
||
|
- name: Ethernet1
|
||
|
enabled: True
|
||
|
- name: Ethernet2
|
||
|
description: 'Configured by Ansible'
|
||
|
speed: '10'
|
||
|
duplex: full
|
||
|
enabled: False
|
||
|
|
||
|
- eos_facts:
|
||
|
gather_network_resources: interfaces
|
||
|
become: yes
|
||
|
|
||
|
- name: Merge provided configuration with device configuration
|
||
|
eos_interfaces:
|
||
|
config: "{{ config }}"
|
||
|
state: merged
|
||
|
register: result
|
||
|
become: yes
|
||
|
|
||
|
- assert:
|
||
|
that:
|
||
|
- "ansible_facts.network_resources.interfaces|symmetric_difference(result.before)|length == 0"
|
||
|
|
||
|
- eos_facts:
|
||
|
gather_network_resources: interfaces
|
||
|
become: yes
|
||
|
|
||
|
- assert:
|
||
|
that:
|
||
|
- "ansible_facts.network_resources.interfaces|symmetric_difference(result.after)|length == 0"
|
||
|
|
||
|
- set_fact:
|
||
|
expected_config:
|
||
|
- name: Ethernet1
|
||
|
description: Interface 1
|
||
|
speed: 40g
|
||
|
duplex: full
|
||
|
enabled: True
|
||
|
- name: Ethernet2
|
||
|
description: 'Configured by Ansible'
|
||
|
speed: '10'
|
||
|
duplex: full
|
||
|
enabled: False
|
||
|
mtu: "3000"
|
||
|
|
||
|
- assert:
|
||
|
that:
|
||
|
- "expected_config|difference(ansible_facts.network_resources.interfaces)|length == 0"
|