cisco.nso.nso_verify – Verifies Cisco NSO configuration.

Note

This plugin is part of the cisco.nso collection (version 1.0.3).

You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

To install it, use: ansible-galaxy collection install cisco.nso.

To use it in a playbook, specify: cisco.nso.nso_verify.

Synopsis

  • This module provides support for verifying Cisco NSO configuration is in compliance with specified values.

Requirements

The below requirements are needed on the host that executes this module.

  • Cisco NSO version 3.4.12 or higher, 4.2.7 or higher, 4.3.8 or higher, 4.4.3 or higher, 4.5 or higher.

Parameters

Parameter Choices/Defaults Comments
data
dictionary / required
NSO data in format as | display json converted to YAML. List entries can be annotated with a __state entry. Set to in-sync/deep-in-sync for services to verify service is in sync with the network. Set to absent in list entries to ensure they are deleted if they exist in NSO.
password
string / required
NSO password
timeout
integer
Default:
300
JSON-RPC request timeout in seconds
url
string / required
NSO JSON-RPC URL, http://localhost:8080/jsonrpc
username
string / required
NSO username
validate_certs
boolean
    Choices:
  • no ←
  • yes
When set to true, validates the SSL certificate of NSO when using SSL

See Also

See also

Cisco DevNet NSO Sandbox

Provides a reservable pod with NSO, virtual network topology simulated with Cisco CML and a Linux host running Ansible

NSO Developer Resources on DevNet

Documentation for getting started using NSO

NSO Developer Hub

Collaboration community portal for NSO developers

NSO Developer Github

Code for NSO on Github

Examples

- name: VERIFY INTERFACE IS ADMINISTRATIVELY UP
  cisco.nso.nso_verify:
    url: http://localhost:8080/jsonrpc
    username: username
    password: password
    data:
      tailf-ncs:devices:
        device:
        - name: dist-sw01
          config:
            interface:
              Ethernet:
                - name: "1/1"
                  shutdown: false

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key Returned Description
violations
complex
failed
List of value violations

Sample:
[{'expected-value': False, 'path': '/ncs:devices/device{dist-sw01}/config/interface/Ethernet{1/1}/shutdown', 'value': True}]
 
expected-value
string
always
Expected value of path

 
path
string
always
Path to the value in violation

 
value
string
always
Current value of path



Authors

  • Claes Nästén (@cnasten)