ansible/test/integration/targets/junos_facts/tests/netconf/facts.yaml
Ganesh Nalawade 3d63ecb6f3
Refactor junos modules to Use netconf and cliconf plugins (#32621)
* Fix junos integration test fixes as per connection refactor (#33050)

Refactor netconf connection plugin to work with netconf plugin

* Fix junos integration test fixes as per connection refactor (#33050)

Refactor netconf connection plugin to work with netconf plugin
Fix CI failure
Fix unit test failure
Fix review comments
2017-11-24 12:04:47 +05:30

110 lines
3.1 KiB
YAML

---
- debug: msg="START netconf/facts.yaml"
- name: Collect default facts from device
junos_facts:
provider: "{{ netconf }}"
register: result
- assert:
that:
- "result.changed == false"
- "'ansible_net_hostname' in result['ansible_facts']"
- "'ansible_net_interfaces' in result['ansible_facts']"
- "'ansible_net_memfree_mb' in result['ansible_facts']"
- name: Collect config facts from device
junos_facts:
gather_subset: config
provider: "{{ netconf }}"
register: result
- assert:
that:
- "result.changed == false"
- "'ansible_net_config' in result['ansible_facts']"
- "'ansible_net_interfaces' not in result['ansible_facts']"
- "'ansible_net_memfree_mb' not in result['ansible_facts']"
- name: Collect all facts from device except hardware
junos_facts:
gather_subset: "!hardware"
provider: "{{ netconf }}"
register: result
- assert:
that:
- "result.changed == false"
- "'ansible_net_config' in result['ansible_facts']"
- "'ansible_net_interfaces' in result['ansible_facts']"
- "'ansible_net_memfree_mb' not in result['ansible_facts']"
- name: Invalid facts subset value
junos_facts:
gather_subset: test
provider: "{{ netconf }}"
ignore_errors: yes
register: result
- assert:
that:
- "result.failed == true"
- "result.msg == 'Subset must be one of [hardware, default, interfaces, config], got test'"
- name: Collect config facts from device in set format
junos_facts:
gather_subset: config
config_format: set
provider: "{{ netconf }}"
register: result
- assert:
that:
- "result.changed == false"
- "'set system host-name {{ inventory_hostname_short }}' in result['ansible_facts']['ansible_net_config']"
- name: Collect config facts from device in xml format
junos_facts:
gather_subset: config
config_format: xml
provider: "{{ netconf }}"
register: result
- assert:
that:
- "result.changed == false"
- "'<host-name>{{ inventory_hostname_short }}</host-name>' in result['ansible_facts']['ansible_net_config']"
- name: Collect config facts from device in json format
junos_facts:
gather_subset: config
config_format: json
provider: "{{ netconf }}"
register: result
- assert:
that:
- "result.changed == false"
- "'{{ inventory_hostname_short }}' == '{{ result['ansible_facts']['ansible_net_config']['configuration'][0]['system'][0]['host-name'][0]['data'] }}' "
when: ansible_net_version == "15.1X49-D15.4"
- assert:
that:
- "result.changed == false"
- "'{{ inventory_hostname_short }}' == '{{ result['ansible_facts']['ansible_net_config']['configuration']['system']['host-name'] }}' "
when: ansible_net_version == "17.3R1.10"
- name: Collect config facts from device in text format
junos_facts:
gather_subset: config
config_format: text
provider: "{{ netconf }}"
register: result
- assert:
that:
- "result.changed == false"
- "'system {\n host-name {{ inventory_hostname_short }};' in result['ansible_facts']['ansible_net_config']"
- debug: msg="END netconf/facts.yaml"