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.
ansible/test/integration/targets/junos_interfaces/tests/netconf/replaced.yaml

78 lines
2.1 KiB
YAML

---
- debug:
msg: "START junos_interfaces replaced integration tests on connection={{ ansible_connection }}"
- include_tasks: _remove_config.yaml
- set_fact:
expected_replaced_output:
- name: ge-0/0/1
description: "Replaced by Ansible - Interface 1"
mtu: 2048
speed: 10m
enabled: true
- name: ge-0/0/2
description: "Configured by Ansible - Interface 2"
mtu: 2048
speed: 10m
enabled: true
hold_time:
up: 3000
down: 3200
- name: fxp0
enabled: true
- block:
- name: Configure initial state for interface
junos_interfaces:
config:
- name: ge-0/0/1
description: "Configured by Ansible - Interface 1"
mtu: 1024
speed: 100m
enabled: False
duplex: full-duplex
hold_time:
up: 2000
down: 2200
- name: ge-0/0/2
description: "Configured by Ansible - Interface 2"
mtu: 2048
speed: 10m
hold_time:
up: 3000
down: 3200
state: merged
register: result
- name: Replace the provided configuration with the exisiting running configuration
junos_interfaces: &replaced
config:
- name: ge-0/0/1
description: "Replaced by Ansible - Interface 1"
mtu: 2048
speed: 10m
enabled: True
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_interfaces: *replaced
register: result
- name: Assert that the previous task was idempotent
assert:
that:
- "result['changed'] == false"
always:
- include_tasks: _remove_config.yaml
- debug:
msg: "END junos_interfaces replaced integration tests on connection={{ ansible_connection }}"