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.
139 lines
3.4 KiB
YAML
139 lines
3.4 KiB
YAML
---
|
|
- debug: msg="START junos_lldp netconf/basic.yaml 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:
|
|
- name: setup - Disable lldp and remove it's configuration
|
|
junos_lldp:
|
|
state: absent
|
|
provider: "{{ netconf }}"
|
|
|
|
- name: Enable lldp
|
|
junos_lldp:
|
|
state: present
|
|
provider: "{{ netconf }}"
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result.changed == true"
|
|
|
|
- name: Enable lldp (idempotent)
|
|
junos_lldp:
|
|
state: present
|
|
provider: "{{ netconf }}"
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result.changed == false"
|
|
|
|
- name: configure lldp parameters and enable lldp
|
|
junos_lldp:
|
|
interval: 10
|
|
hold_multiplier: 5
|
|
transmit_delay: 2
|
|
state: present
|
|
provider: "{{ netconf }}"
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result.changed == true"
|
|
- result.diff.prepared is search("\+ *advertisement-interval 10")
|
|
- result.diff.prepared is search("\+ *transmit-delay 2")
|
|
- result.diff.prepared is search("\+ *hold-multiplier 5")
|
|
|
|
- name: configure lldp parameters and enable lldp(idempotent)
|
|
junos_lldp:
|
|
interval: 10
|
|
hold_multiplier: 5
|
|
transmit_delay: 2
|
|
state: present
|
|
provider: "{{ netconf }}"
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result.changed == false"
|
|
|
|
- name: configure lldp parameters and disable lldp
|
|
junos_lldp:
|
|
interval: 10
|
|
hold_multiplier: 5
|
|
transmit_delay: 2
|
|
state: disabled
|
|
provider: "{{ netconf }}"
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result.changed == true"
|
|
- result.diff.prepared is search("\+ *disable")
|
|
- "'advertisement-interval 10;' not in result.diff.prepared"
|
|
- "'transmit-delay 2;' not in result.diff.prepared"
|
|
- "'hold-multiplier 5;' not in result.diff.prepared"
|
|
|
|
- name: configure lldp parameters and enable lldp
|
|
junos_lldp:
|
|
interval: 10
|
|
hold_multiplier: 5
|
|
transmit_delay: 2
|
|
state: enabled
|
|
provider: "{{ netconf }}"
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result.changed == true"
|
|
- result.diff.prepared is search("\- *disable")
|
|
- "'advertisement-interval 10;' not in result.diff.prepared"
|
|
- "'transmit-delay 2;' not in result.diff.prepared"
|
|
- "'hold-multiplier 5;' not in result.diff.prepared"
|
|
|
|
- name: Remove lldp configuration and diable lldp
|
|
junos_lldp:
|
|
interval: 10
|
|
hold_multiplier: 5
|
|
transmit_delay: 2
|
|
state: absent
|
|
provider: "{{ netconf }}"
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result.changed == true"
|
|
- result.diff.prepared is search("\+ *disable")
|
|
- result.diff.prepared is search("\- *advertisement-interval 10")
|
|
- result.diff.prepared is search("\- *transmit-delay 2")
|
|
- result.diff.prepared is search("\- *hold-multiplier 5")
|
|
|
|
- name: Remove lldp (idempotent)
|
|
junos_lldp:
|
|
state: absent
|
|
provider: "{{ netconf }}"
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result.changed == false"
|
|
|
|
when: lldp_supported
|
|
|
|
- debug: msg="END junos_lldp netconf/basic.yaml on connection={{ ansible_connection }}"
|