cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
2786
Views
0
Helpful
1
Replies

ncclient.operations.rpc.RPCError: 'YANG framework' detected the 'fatal' condition 'Operation not supported on this datastore'

ps12
Level 1
Level 1

I am configuring the hostname of my cisco XR using ncclient. But I am receiving bellow an RPCError-

Traceback (most recent call last):
  File "obj4.py", line 13, in <module>
    edit_result = device.edit_config(target='running',config=host_name, default_operation='merge').data_xml
  File "/usr/local/lib/python3.5/dist-packages/ncclient/manager.py", line 162, in wrapper
    return self.execute(op_cls, *args, **kwds)
  File "/usr/local/lib/python3.5/dist-packages/ncclient/manager.py", line 232, in execute
    raise_mode=self._raise_mode).request(*args, **kwds)
  File "/usr/local/lib/python3.5/dist-packages/ncclient/operations/edit.py", line 67, in request
    return self._request(node)
  File "/usr/local/lib/python3.5/dist-packages/ncclient/operations/rpc.py", line 337, in _request
    raise self._reply.error
ncclient.operations.rpc.RPCError: 'YANG framework' detected the 'fatal' condition 'Operation not supported on this datastore'

My code is-

#!/usr/bin/env python3

from ncclient import manager

with manager.connect(host='198.51.100.1',port=830,username='netman',password='netman',hostkey_verify=False,device_params={'name':'iosxr'},allow_agent=True,look_for_keys=False) as device:

    host_name = '''<config>              
        <cli-config-data>
                  <cmd>hostname Lab9XR</cmd>
                 </cli-config-data>
                        </config>'''

    edit_result = device.edit_config(target='running',config=host_name, default_operation='merge').data_xml
    print (edit_result)

Configuration on my cisco XR device is-

RP/0/0/CPU0:ios#sh run
Mon Apr  8 02:53:28.496 UTC
Building configuration...
!! IOS XR Configuration 6.1.3
!! Last configuration change at Mon Apr  8 02:08:58 2019 by netman
!
hostname ios
interface MgmtEth0/0/CPU0/0
 shutdown
!
interface GigabitEthernet0/0/0/0
 ipv4 address 198.51.100.1 255.255.255.0
!
interface GigabitEthernet0/0/0/1
 shutdown
!
xml agent
 iteration off
!
netconf agent tty
!
netconf-yang agent
 ssh
!
ssh server v2
ssh server netconf vrf default
ssh server logging
ssh timeout 120
end

Please help resolve the issue. How to enable cli module on this device's datastore?

1 Reply 1

harjindersingh
Cisco Employee
Cisco Employee
Please use candidate store than running store.
edit_result = device.edit_config(target='running',config=host_name, default_operation='merge').data_xml ===>
edit_result = device.edit_config(target='candidate',config=host_name, default_operation='merge').data_xml

Or very simple

edit_config(config=xml_data, target="candidate")

Review Cisco Networking for a $25 gift card