67 lines
1.7 KiB
YAML
67 lines
1.7 KiB
YAML
|
---
|
||
|
- debug:
|
||
|
msg: "START junos_lldp_interfaces replaced integration tests on connection={{ ansible_connection }}"
|
||
|
|
||
|
- name: get supported protocols
|
||
|
junos_command:
|
||
|
commands: show lldp
|
||
|
register: result
|
||
|
ignore_errors: yes
|
||
|
|
||
|
- name: lldp supported
|
||
|
set_fact:
|
||
|
lldp_supported: True
|
||
|
when: not result.failed
|
||
|
|
||
|
- name: lldp not supported
|
||
|
set_fact:
|
||
|
lldp_supported: False
|
||
|
when: result.failed
|
||
|
|
||
|
- block:
|
||
|
- include_tasks: _remove_config.yaml
|
||
|
|
||
|
- set_fact:
|
||
|
expected_replaced_output:
|
||
|
- name: ge-0/0/1
|
||
|
enable: False
|
||
|
- name: ge-0/0/2
|
||
|
enable: False
|
||
|
|
||
|
- name: Configure initial state for interface
|
||
|
junos_lldp_interfaces:
|
||
|
config:
|
||
|
- name: ge-0/0/1
|
||
|
- name: ge-0/0/2
|
||
|
enable: False
|
||
|
register: result
|
||
|
|
||
|
- name: Replace the provided configuration with the exisiting running configuration
|
||
|
junos_lldp_interfaces: &replaced
|
||
|
config:
|
||
|
- name: ge-0/0/1
|
||
|
enable: False
|
||
|
state: replaced
|
||
|
register: result
|
||
|
|
||
|
- name: Assert the configuration is reflected on host
|
||
|
assert:
|
||
|
that:
|
||
|
- "{{ expected_replaced_output | symmetric_difference(result['after']) |length == 0 }}"
|
||
|
|
||
|
- name: Replace the provided configuration with the existing running configuration (IDEMPOTENT)
|
||
|
junos_lldp_interfaces: *replaced
|
||
|
register: result
|
||
|
|
||
|
- name: Assert that the previous task was idempotent
|
||
|
assert:
|
||
|
that:
|
||
|
- "result['changed'] == false"
|
||
|
|
||
|
always:
|
||
|
- include_tasks: _remove_config.yaml
|
||
|
when: lldp_supported
|
||
|
|
||
|
- debug:
|
||
|
msg: "END junos_lldp_interfaces replaced integration tests on connection={{ ansible_connection }}"
|