ansible/test/integration/targets/junos_linkagg/tests/netconf/basic.yaml
Ganesh Nalawade 1c8c51d05c
Fix junos integration failures (#34571)
*  Add connection=netconf in individual roles for modules that run using netconf connection
plugin
*  Add connection=network_cli for junos_netconf and junos_command
at applicable places
2018-01-08 17:58:47 +05:30

240 lines
4.9 KiB
YAML

---
- debug: msg="START junos_linkagg netconf/basic.yaml on connection={{ ansible_connection }}"
- name: setup - remove linkagg
junos_linkagg:
name: ae0
members:
- ge-0/0/6
- ge-0/0/7
mode: active
device_count: 4
state: absent
provider: "{{ netconf }}"
- name: configure linkagg
junos_linkagg:
name: ae0
members:
- ge-0/0/6
- ge-0/0/7
mode: active
device_count: 4
state: present
provider: "{{ netconf }}"
register: result
- name: Get running configuration
junos_rpc:
rpc: get-configuration
provider: "{{ netconf }}"
register: config
- assert:
that:
- "result.changed == true"
- "'<name>ae0</name>' in config.xml"
- "'<device-count>4</device-count>' in config.xml"
- "'<bundle>ae0</bundle>' in config.xml"
- "'<active/>' in config.xml"
- name: configure linkagg (idempotent)
junos_linkagg:
name: ae0
members:
- ge-0/0/6
- ge-0/0/7
mode: active
device_count: 4
state: present
provider: "{{ netconf }}"
register: result
- assert:
that:
- "result.changed == false"
- name: configure lacp in passive
junos_linkagg:
name: ae0
members:
- ge-0/0/6
- ge-0/0/7
mode: passive
device_count: 4
state: present
provider: "{{ netconf }}"
register: result
- name: Get running configuration
junos_rpc:
rpc: get-configuration
provider: "{{ netconf }}"
register: config
- assert:
that:
- "result.changed == true"
- "'<passive/>' in config.xml"
- name: delete lacp
junos_linkagg:
name: ae0
members:
- ge-0/0/6
- ge-0/0/7
mode: off
device_count: 4
state: present
provider: "{{ netconf }}"
register: result
- name: Get running configuration
junos_rpc:
rpc: get-configuration
provider: "{{ netconf }}"
register: config
- assert:
that:
- "result.changed == true"
- "'<lacp/>' not in config.xml"
- name: Change device count
junos_linkagg:
name: ae0
device_count: 2
provider: "{{ netconf }}"
register: result
- name: Get running configuration
junos_rpc:
rpc: get-configuration
provider: "{{ netconf }}"
register: config
- assert:
that:
- "result.changed == true"
- "'<device-count>2</device-count>' in config.xml"
- name: Disable linkagg interface
junos_linkagg:
name: ae0
state: down
provider: "{{ netconf }}"
register: result
- assert:
that:
- "result.changed == true"
- result.diff.prepared is search("\+ *disable")
- name: Enable linkagg interface
junos_linkagg:
name: ae0
state: up
provider: "{{ netconf }}"
register: result
- assert:
that:
- "result.changed == true"
- result.diff.prepared is search("\- *disable")
- name: Deactivate linkagg
junos_linkagg:
name: ae0
members:
- ge-0/0/6
- ge-0/0/7
mode: active
device_count: 4
state: present
active: False
provider: "{{ netconf }}"
register: result
- name: Get running configuration
junos_rpc:
rpc: get-configuration
provider: "{{ netconf }}"
register: config
- assert:
that:
- "result.changed == true"
- "'<bundle inactive=\"inactive\">ae0</bundle>' in config.xml"
- "'<device-count inactive=\"inactive\">4</device-count>' in config.xml"
- "'inactive: ae0' in result.diff.prepared"
- name: Activate linkagg
junos_linkagg:
name: ae0
members:
- ge-0/0/6
- ge-0/0/7
mode: active
device_count: 4
state: present
active: True
provider: "{{ netconf }}"
register: result
- name: Get running configuration
junos_rpc:
rpc: get-configuration
provider: "{{ netconf }}"
register: config
- assert:
that:
- "result.changed == true"
- "'<active/>' in config.xml"
- "'<bundle>ae0</bundle>' in config.xml"
- "'active: device-count 4' in result.diff.prepared"
- "'active: ae0' in result.diff.prepared"
- name: Delete linkagg
junos_linkagg:
name: ae0
members:
- ge-0/0/6
- ge-0/0/7
mode: active
device_count: 4
state: absent
provider: "{{ netconf }}"
register: result
- name: Get running configuration
junos_rpc:
rpc: get-configuration
provider: "{{ netconf }}"
register: config
- assert:
that:
- "result.changed == true"
- "'<active/>' not in config.xml"
- "'<bundle>ae0</bundle>' not in config.xml"
- "'<device-count>4</device-count>' not in config.xml"
- "'<name>ae0</name>' not in config.xml"
- name: Delete linkagg (idempotent)
junos_linkagg:
name: ae0
members:
- ge-0/0/6
- ge-0/0/7
mode: active
device_count: 4
state: absent
provider: "{{ netconf }}"
register: result
- assert:
that:
- "result.changed == false"
- debug: msg="END junos_linkagg netconf/basic.yaml on connection={{ ansible_connection }}"