On this page
nso_config - Manage Cisco NSO configuration and service synchronization.
New in version 2.5.
Synopsis
- This module provides support for managing configuration in Cisco NSO and can also ensure services are in sync.
 
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  
        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  
        required
         | 
      
        
        NSO password
         | 
     |
| timeout  
        (added in 2.6)
         | 
      Default: 
        300
         | 
      
        
        JSON-RPC request timeout in seconds
         | 
     
| url  
        required
         | 
      
        
        NSO JSON-RPC URL, http://localhost:8080/jsonrpc
         | 
     |
| username  
        required
         | 
      
        
        NSO username
         | 
     
Examples
- name: Create L3VPN
  nso_config:
    url: http://localhost:8080/jsonrpc
    username: username
    password: password
    data:
      l3vpn:vpn:
        l3vpn:
        - name: company
          route-distinguisher: 999
          endpoint:
          - id: branch-office1
            ce-device: ce6
            ce-interface: GigabitEthernet0/12
            ip-network: 10.10.1.0/24
            bandwidth: 12000000
            as-number: 65101
          - id: branch-office2
            ce-device: ce1
            ce-interface: GigabitEthernet0/11
            ip-network: 10.7.7.0/24
            bandwidth: 6000000
            as-number: 65102
          - id: branch-office3
            __state: absent
        __state: in-sync
  Return Values
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:
        
       
        [{'path': '/l3vpn:vpn/l3vpn{example}/endpoint{office}/bandwidth', 'from': '6000000', 'to': '12000000', 'type': 'set'}]
         | 
     |
| path  
        string
         | 
      always | 
        
        Path to value changed
          | 
     |
| from  
        string
         | 
      When previous value is present on value change | 
        
        Previous value if any, else null
          | 
     |
| to  | 
      When new value is present on value change | 
        
        Current value if any, else null.
          | 
     |
| type  | 
      
        
        Type of change. create|delete|set|re-deploy
          | 
     ||
| diffs  
        complex
         | 
      always | 
        
        List of sync changes
         Sample:
        
       
        [{'path': '/l3vpn:vpn/l3vpn{example}', 'diff': ' devices {\n device pe3 {\n config {\n alu:service {\n vprn 65101 {\n bgp {\n group example-ce6 {\n- peer-as 65102;\n+ peer-as 65101;\n }\n }\n }\n }\n }\n }\n }\n'}]
         | 
     |
| path  
        string
         | 
      always | 
        
        keypath to service changed
          | 
     |
| diff  
        string
         | 
      always | 
        
        configuration difference triggered the re-deploy
          | 
     |
Status
This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.
Maintenance
This module is flagged as community which means that it is maintained by the Ansible Community. See Module Maintenance & Support for more info.
For a list of other modules that are also maintained by the Ansible Community, see here.
Author
- Claes Nästén (@cnasten)
 
Hint
If you notice any issues in this documentation you can edit this document to improve it.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
 https://docs.ansible.com/ansible/2.6/modules/nso_config_module.html