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_config
.
The below requirements are needed on the host that executes this module.
Parameter | Choices/Defaults | Comments |
---|---|---|
commit_flags list / elements=string | A list containing commit flags. See the API documentation for supported commit flags. https://developer.cisco.com/docs/nso/guides/#!life-cycle-operations-how-to-manipulate-existing-services-and-devices/commit-flags-and-device-service-actions | |
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 |
| When set to true, validates the SSL certificate of NSO when using SSL |
See also
Provides a reservable pod with NSO, virtual network topology simulated with Cisco CML and a Linux host running Ansible
Documentation for getting started using NSO
Collaboration community portal for NSO developers
Code for NSO on Github
- name: CREATE DEVICE IN NSO cisco.nso.nso_config: url: https://10.10.20.49/jsonrpc username: developer password: C1sco12345 data: tailf-ncs:devices: device: - address: 10.10.20.175 description: CONFIGURED BY ANSIBLE! name: dist-rtr01 authgroup: "labadmin" device-type: cli: ned-id: "cisco-ios-cli-6.44" port: "22" state: admin-state: "unlocked" - name: ADD NEW LOOPBACK cisco.nso.nso_config: url: https://10.10.20.49/jsonrpc username: developer password: C1sco12345 data: tailf-ncs:devices: device: - name: dist-rtr01 config: tailf-ned-cisco-ios:interface: Loopback: - name: "1" description: Created by Ansible! - name: CONFIGURE IP ADDRESS ON LOOPBACK cisco.nso.nso_config: url: https://10.10.20.49/jsonrpc username: developer password: C1sco12345 data: tailf-ncs:devices: device: - name: dist-rtr01 config: tailf-ned-cisco-ios:interface: Loopback: - name: "1" description: Created by Ansible! ip: address: primary: address: 10.10.10.10 mask: 255.255.255.255 - name: CONFIGURE NTP SERVER ON DEVICE cisco.nso.nso_config: url: https://10.10.20.49/jsonrpc username: developer password: C1sco12345 data: tailf-ncs:devices: device: - name: dist-rtr01 config: tailf-ned-cisco-ios:ntp: server: peer-list: - name: 2.2.2.2
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description | |
---|---|---|---|
changes complex | always | List of changes Sample: [{'from': None, 'path': '/ncs:devices/device{dist-rtr01}/config/ios:interface/Loopback{1}/ip/address/primary/address', 'to': '10.10.10.10', 'type': 'set'}] | |
from string | When previous value is present on value change | Previous value if any, else null | |
path string | always | Path to value changed | |
commit_result complex | always | Return values from commit operation Sample: [{'commit_queue': {'id': 1611776004976, 'status': 'async'}}] | |
commit_queue dictionary | When commit-queue is set in commit_flags | Commit queue ID and status, if any | |
diffs complex | always | List of sync changes | |
diff string | always | configuration difference triggered the re-deploy | |
path string | always | keypath to service changed |
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/cisco/nso/nso_config_module.html