51 lines
1.5 KiB
YAML
51 lines
1.5 KiB
YAML
|
---
|
||
|
- debug:
|
||
|
msg: "START Replaced ios_l2_interfaces state for integration tests on connection={{ ansible_connection }}"
|
||
|
|
||
|
- include_tasks: _remove_config.yaml
|
||
|
|
||
|
- include_tasks: _populate_config.yaml
|
||
|
|
||
|
- block:
|
||
|
- name: Replaces device L2 configuration from listed interfaces with provided configuration
|
||
|
ios_l2_interfaces: &replaced
|
||
|
config:
|
||
|
- name: GigabitEthernet0/1
|
||
|
access:
|
||
|
vlan: 40
|
||
|
- name: GigabitEthernet0/2
|
||
|
trunk:
|
||
|
native_vlan: 20
|
||
|
pruning_vlans: 10-20,30
|
||
|
encapsulation: dot1q
|
||
|
state: replaced
|
||
|
register: result
|
||
|
|
||
|
- name: Assert that correct set of commands were generated
|
||
|
assert:
|
||
|
that:
|
||
|
- "{{ replaced['commands'] | symmetric_difference(result['commands']) | length == 0 }}"
|
||
|
|
||
|
- name: Assert that before dicts are correctly generated
|
||
|
assert:
|
||
|
that:
|
||
|
- "{{ replaced['before'] | symmetric_difference(result['before']) | length == 0 }}"
|
||
|
|
||
|
- name: Assert that after dict is correctly generated
|
||
|
assert:
|
||
|
that:
|
||
|
- "{{ replaced['after'] | symmetric_difference(result['after']) | length == 0 }}"
|
||
|
|
||
|
- name: Replaces device L2 configuration from listed interfaces with provided configuration (IDEMPOTENT)
|
||
|
ios_l2_interfaces: *replaced
|
||
|
register: result
|
||
|
|
||
|
- name: Assert that task was idempotent
|
||
|
assert:
|
||
|
that:
|
||
|
- "result['changed'] == false"
|
||
|
when: ansible_net_version != "15.6(2)T"
|
||
|
|
||
|
always:
|
||
|
- include_tasks: _remove_config.yaml
|