72 lines
1.7 KiB
YAML
72 lines
1.7 KiB
YAML
---
|
|
- debug: msg="START netconf/rpc.yaml"
|
|
|
|
- name: Execute RPC on device
|
|
junos_rpc:
|
|
rpc: get-interface-information
|
|
provider: "{{ netconf }}"
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result.changed == false"
|
|
- "'<name>\nem0\n</name>' in result['xml']"
|
|
- "result.output is defined"
|
|
|
|
- name: Execute RPC with args on device
|
|
junos_rpc:
|
|
rpc: get-interface-information
|
|
args:
|
|
interface-name: em0
|
|
media: True
|
|
provider: "{{ netconf }}"
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result.changed == false"
|
|
- "'<name>\nem0\n</name>' in result['xml']"
|
|
- "'<name>\nlo0\n</name>' not in result['xml']"
|
|
|
|
- name: Execute RPC on device and get output in text format
|
|
junos_rpc:
|
|
rpc: get-interface-information
|
|
output: text
|
|
provider: "{{ netconf }}"
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result.changed == false"
|
|
- "result.output is defined"
|
|
- "result.output_lines is defined"
|
|
- "'Physical interface: em0' in result['output']"
|
|
|
|
- name: Execute RPC on device and get output in json format
|
|
junos_rpc:
|
|
rpc: get-interface-information
|
|
output: json
|
|
args:
|
|
interface-name: em0
|
|
media: True
|
|
provider: "{{ netconf }}"
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result.changed == false"
|
|
- "result.output is defined"
|
|
- "result['output']['interface-information'][0]['physical-interface'][0]['name'][0]['data'] == \"em0\""
|
|
|
|
- name: Execute invalid RPC
|
|
junos_rpc:
|
|
rpc: show-interface-information
|
|
provider: "{{ netconf }}"
|
|
register: result
|
|
ignore_errors: yes
|
|
|
|
- assert:
|
|
that:
|
|
- "result.failed == true"
|
|
|
|
- debug: msg="END netconf/rpc.yaml"
|