ansible/test/integration/targets/junos_interface/tests/netconf/basic.yaml
Ganesh Nalawade 2ff464c949 Add net_interface declarative module (#25766)
* Add net_interface declartive module

*  Add net_interface module
*  Add junos_interface implementation module
*  Other minor changes

* Add integration test

*  Integration test for net_interface
*  Integration test for junos_interface

* Fix CI failures

* Documentation changes
2017-06-16 22:12:50 +05:30

130 lines
2.9 KiB
YAML

---
- debug: msg="START junos_interface netconf/basic.yaml"
- name: setup - remove interface
junos_interface:
name: ge-0/0/1
description: test-interface
state: absent
provider: "{{ netconf }}"
- name: Create interface
junos_interface:
name: ge-0/0/1
description: test-interface
state: present
provider: "{{ netconf }}"
register: result
- debug:
msg: "{{ result }}"
- assert:
that:
- "result.changed == true"
- "'<name>ge-0/0/1</name>' in result.rpc"
- "'<description>test-interface</description>' in result.rpc"
- name: Create interface (idempotent)
junos_interface:
name: ge-0/0/1
description: test-interface
state: present
provider: "{{ netconf }}"
register: result
- assert:
that:
- "result.changed == false"
- name: Deactivate interface configuration
junos_interface:
name: ge-0/0/1
description: test-interface
state: suspend
provider: "{{ netconf }}"
register: result
- assert:
that:
- "result.changed == true"
- "'<interface inactive=\"inactive\">' in result.rpc"
- "'<name>ge-0/0/1</name>' in result.rpc"
- name: Activate interface configuration
junos_interface:
name: ge-0/0/1
description: test-interface
state: active
provider: "{{ netconf }}"
register: result
- assert:
that:
- "result.changed == true"
- "'<interface active=\"active\">' in result.rpc"
- "'<name>ge-0/0/1</name>' in result.rpc"
- name: Configure interface attributes
junos_interface:
name: ge-0/0/1
description: test-interface
state: present
speed: 1g
mtu: 256
duplex: full
provider: "{{ netconf }}"
register: result
- assert:
that:
- "result.changed == true"
- "'<name>ge-0/0/1</name>' in result.rpc"
- "'<link-mode>full-duplex</link-mode>' in result.rpc"
- "'<mtu>256</mtu>' in result.rpc"
- "'<speed>1g</speed>' in result.rpc"
- "'<description>test-interface</description>' in result.rpc"
- name: Disable interface
junos_interface:
name: ge-0/0/1
description: test-interface
state: present
enabled: False
provider: "{{ netconf }}"
register: result
- assert:
that:
- "result.changed == true"
- "'<disable />' in result.rpc"
- "'<name>ge-0/0/1</name>' in result.rpc"
- name: Enable interface
junos_interface:
name: ge-0/0/1
description: test-interface
state: present
enabled: True
provider: "{{ netconf }}"
register: result
- assert:
that:
- "result.changed == true"
- "'<disable delete=\"delete\" />' in result.rpc"
- "'<name>ge-0/0/1</name>' in result.rpc"
- name: Delete interface
junos_interface:
name: ge-0/0/1
description: test-interface
state: absent
provider: "{{ netconf }}"
register: result
- assert:
that:
- "result.changed == true"
- "'<interface operation=\"delete\">' in result.rpc"
- "'<name>ge-0/0/1</name>' in result.rpc"