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

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

JSON-RPC request timeout in seconds

Default: 300

url

string / required

username

string / required

NSO username

validate_certs

boolean

When set to true, validates the SSL certificate of NSO when using SSL

Choices:

  • no ← (default)

  • yes

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

Description

violations

complex

List of value violations

Returned: failed

Sample: [{“expected-value”: false, “path”: “/ncs:devices/device{dist-sw01}/config/interface/Ethernet{1/1}/shutdown”, “value”: true}]

expected-value

string

Expected value of path

Returned: always

path

string

Path to the value in violation

Returned: always

value

string

Current value of path

Returned: always

Authors

  • Claes Nästén (@cnasten)