How do I execute RPCs?
Table of Contents
This document contains some examples of executing RPCs defined in yang. To perform these operations, the ExecutorService
is used.
The below approach can be used to execute a rollback RPC.
Executing a rollback RPC
For this example, the Cisco_IOS_XR_cfgmgr_rollback_act.RollBackConfigurationLast
class is used. Note that the ydk
and ydk-models-cisco-ios-xr
python packages need to be installed for this example.
1# Import the rollback module
2from ydk.models.cisco_ios_xr import Cisco_IOS_XR_cfgmgr_rollback_act
3
4# Import the executor service and netconf provider
5from ydk.services import ExecutorService
6from ydk.providers import NetconfServiceProvider
7
8# Create object
9roll_back_configuration_to = Cisco_IOS_XR_cfgmgr_rollback_act.RollBackConfigurationLast()
10
11# Force roll back for the five most recent changes
12roll_back_configuration_to.input.comment = "Forced programmatic rollback"
13roll_back_configuration_to.input.count = 5
14roll_back_configuration_to.input.force = True
15roll_back_configuration_to.input.label = "PRB-005"
16
17# Create executor service
18executor = ExecutorService()
19
20# Create a NetconfServiceProvider instance to connect to the device
21provider = NetconfServiceProvider(address='10.0.0.1',
22 port=830,
23 username='test',
24 password='test')
25
26# Execute RPC on NETCONF device
27executor.execute_rpc(provider, roll_back_configuration_to)