mirror of https://github.com/ansible/ansible.git
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.
60 lines
1.8 KiB
YAML
60 lines
1.8 KiB
YAML
5 years ago
|
---
|
||
|
- debug:
|
||
|
msg: "START Merged iosxr_l3_interfaces state for integration tests on connection={{ ansible_connection }}"
|
||
|
|
||
|
- include_tasks: _remove_config.yaml
|
||
|
|
||
|
- block:
|
||
|
- name: Merge provided configuration with device configuration
|
||
|
iosxr_l3_interfaces: &merged
|
||
|
config:
|
||
|
- name: GigabitEthernet0/0/0/1
|
||
|
ipv4:
|
||
|
- address: 198.51.100.1/24
|
||
|
- name: GigabitEthernet0/0/0/2
|
||
|
ipv6:
|
||
|
- address: 2001:db8:0:3::/64
|
||
|
ipv4:
|
||
|
- address: 192.0.2.1/24
|
||
|
- address: 192.0.2.2/24
|
||
|
secondary: True
|
||
|
- name: GigabitEthernet0/0/0/3
|
||
|
ipv4:
|
||
|
- address: 203.0.110.1/24
|
||
|
- address: 203.0.110.5/24
|
||
|
secondary: True
|
||
|
- name: GigabitEthernet0/0/0/3.100
|
||
|
ipv4:
|
||
|
- address: 198.51.100.14/24
|
||
|
ipv6:
|
||
|
- address: 2001:db8:0:4::/64
|
||
|
state: merged
|
||
|
register: result
|
||
|
|
||
|
- name: Assert that correct set of commands were generated
|
||
|
assert:
|
||
|
that:
|
||
|
- "{{ merged['commands'] | symmetric_difference(result['commands']) | length == 0 }}"
|
||
|
|
||
|
- name: Assert that before dicts are correctly generated
|
||
|
assert:
|
||
|
that:
|
||
|
- "{{ merged['before'] | symmetric_difference(result['before']) | length == 0 }}"
|
||
|
|
||
|
- name: Assert that after dict is correctly generated
|
||
|
assert:
|
||
|
that:
|
||
|
- "{{ merged['after'] | symmetric_difference(result['after']) | length == 0 }}"
|
||
|
|
||
|
- name: Merge provided configuration with device configuration (IDEMPOTENT)
|
||
|
iosxr_l3_interfaces: *merged
|
||
|
register: result
|
||
|
|
||
|
- name: Assert that the previous task was idempotent
|
||
|
assert:
|
||
|
that:
|
||
|
- "result['changed'] == false"
|
||
|
|
||
|
always:
|
||
|
- include_tasks: _remove_config.yaml
|