--- - debug: msg="START netconf_get iosxr/basic.yaml on connection={{ ansible_connection }}" - name: setup interface iosxr_config: commands: - description this is test interface Loopback999 - no shutdown parents: - interface Loopback999 match: none connection: network_cli - name: get running interface confiugration with filter netconf_get: source: running filter: register: result connection: netconf - assert: that: - "'this is test interface Loopback999' in result.stdout" - "'' not in result.stdout" - name: test lock=never, get-config, running interface confiugration with filter without lock netconf_get: source: running lock: never filter: register: result connection: netconf - assert: that: - "'this is test interface Loopback999' in result.stdout" - "'' not in result.stdout" - name: test lock=if-supported, get-config, running interface confiugration with filter without lock netconf_get: source: running lock: if-supported filter: register: result connection: netconf - assert: that: - "'this is test interface Loopback999' in result.stdout" - "'' not in result.stdout" - name: Failure scenario, get-config information with lock netconf_get: source: running lock: always register: result ignore_errors: True connection: netconf - assert: that: - "'running' in result.msg" - name: Failure scenario, fetch config from startup netconf_get: source: startup register: result ignore_errors: True connection: netconf - assert: that: - "'startup source is not supported' in result.msg" - name: test get, information from running datastore without lock netconf_get: lock: never filter: register: result connection: netconf - assert: that: - "'this is test interface Loopback999' in result.stdout" - name: test get, information from running datastore with lock if supported netconf_get: lock: if-supported filter: register: result connection: netconf - assert: that: - "'this is test interface Loopback999' in result.stdout" - name: Failure scenario, get information from running with lock netconf_get: lock: always register: result ignore_errors: True connection: netconf - assert: that: - "'running' in result.msg" - name: get configuration and state data in json format netconf_get: source: running display: json register: result connection: netconf - assert: that: - "{{ result['output']['rpc-reply']['data']['aaa'] is defined}}" - name: get configuration data in xml pretty format netconf_get: source: running display: pretty register: result connection: netconf - assert: that: - "{{ result['output'] is defined}}" - name: get configuration data in xml with namespace stripped netconf_get: source: running display: xml register: result connection: netconf - assert: that: - "{{ result['output'] is defined}}" - "{{ 'xmlns' not in result.output }}" - name: Failure scenario, unsupported filter netconf_get: filter: configuration/state register: result ignore_errors: True connection: netconf - assert: that: - "'filter value \\'configuration/state\\' of type xpath is not supported' in result.msg" - name: setup - teardown iosxr_config: commands: - no description - shutdown parents: - interface Loopback999 match: none connection: network_cli - debug: msg="END netconf_get iosxr/basic.yaml on connection={{ ansible_connection }}"