<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Using the Executor service in Tools</title>
    <link>https://community.cisco.com/t5/tools/using-the-executor-service/m-p/3578732#M2829</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P style="font-size: 12px; font-family: arial; color: #3d3d3d;"&gt;Hi Thang,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="font-size: 12px; font-family: arial; color: #3d3d3d;"&gt;Can you please post your script and complete &lt;A class="jive-link-external-small" href="http://ydk.cisco.com/py/docs/guides/introduction.html#logging" rel="nofollow" style="font-weight: inherit; font-style: inherit; font-family: inherit; color: #0a63a7;" target="_blank"&gt;logs&lt;/A&gt;?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="font-size: 12px; font-family: arial; color: #3d3d3d;"&gt;Thanks,&lt;/P&gt;&lt;P style="font-size: 12px; font-family: arial; color: #3d3d3d;"&gt;Abhi&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 04 Oct 2017 17:35:36 GMT</pubDate>
    <dc:creator>abhirame</dc:creator>
    <dc:date>2017-10-04T17:35:36Z</dc:date>
    <item>
      <title>Using the Executor service</title>
      <link>https://community.cisco.com/t5/tools/using-the-executor-service/m-p/3578730#M2827</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;YANG models not only define configuration and operational data.&amp;nbsp; They also define remote procedure calls or commands.&amp;nbsp; Cisco IOS XR 6.1.2 starts introducing models for those RPCs or commands.&amp;nbsp; Those models define how to roll back config, test SNMP traps or generate custom syslog messages.&amp;nbsp; An RPC model specifies whether the RPC takes input data and whether it produces output data.&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In YDK 0.5.1, we introduced the Executor service which allows you to execute RPCs. This service supports a single operation (execute_rpc) and is currently documented at:&lt;/P&gt;&lt;P&gt;&lt;A href="http://ydk.cisco.com/py/docs/ydk.services.html#executorservice-provides-api-to-execute-rpcs" style="font-size: 10pt;" title="http://ydk.cisco.com/py/docs/ydk.services.html#executorservice-provides-api-to-execute-rpcs"&gt;http://ydk.cisco.com/py/docs/ydk.services.html#executorservice-provides-api-to-execute-rpcs&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Watch the &lt;A href="https://github.com/CiscoDevNet/ydk-py-samples"&gt;ydk-py-samples&lt;/A&gt; repository for a series of upcoming sample apps that execute RPCs.&amp;nbsp; Stay tuned!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Dec 2016 03:47:09 GMT</pubDate>
      <guid>https://community.cisco.com/t5/tools/using-the-executor-service/m-p/3578730#M2827</guid>
      <dc:creator>saalvare</dc:creator>
      <dc:date>2016-12-13T03:47:09Z</dc:date>
    </item>
    <item>
      <title>Re: Using the Executor service</title>
      <link>https://community.cisco.com/t5/tools/using-the-executor-service/m-p/3578731#M2828</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Santiago,&lt;/P&gt;&lt;P&gt;I am trying to use Python Executor service, but I got this error.&lt;/P&gt;&lt;P&gt;Do you know if execute_rpc method support ing 0.6.1 release ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;-Thang&lt;/P&gt;&lt;P&gt;===========================================================&lt;/P&gt;&lt;P&gt;&amp;nbsp; File "./lum.py", line 31, in exec_rpc&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; inst.execute_rpc(session, rpc)&lt;/P&gt;&lt;P&gt;&amp;nbsp; File "/home/tdo/.local/lib/python2.7/site-packages/ydk/services/executor_service.py", line 32, in execute_rpc&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return self._es.execute_rpc(provider, entity, top_entity)&lt;/P&gt;&lt;P&gt;&amp;nbsp; File "/usr/lib/python2.7/contextlib.py", line 35, in __exit__&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; self.gen.throw(type, value, traceback)&lt;/P&gt;&lt;P&gt;&amp;nbsp; File "/home/tdo/.local/lib/python2.7/site-packages/ydk/errors/error_handler.py", line 82, in handle_runtime_error&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; _raise(_exc)&lt;/P&gt;&lt;P&gt;&amp;nbsp; File "/home/tdo/.local/lib/python2.7/site-packages/ydk/errors/error_handler.py", line 56, in _raise&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; raise exc&lt;/P&gt;&lt;P&gt;ydk.errors.YPYError: Unable to cast Python instance to C++ type (compile in debug mode for details)&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 04 Oct 2017 15:54:09 GMT</pubDate>
      <guid>https://community.cisco.com/t5/tools/using-the-executor-service/m-p/3578731#M2828</guid>
      <dc:creator>ttdo</dc:creator>
      <dc:date>2017-10-04T15:54:09Z</dc:date>
    </item>
    <item>
      <title>Re: Using the Executor service</title>
      <link>https://community.cisco.com/t5/tools/using-the-executor-service/m-p/3578732#M2829</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P style="font-size: 12px; font-family: arial; color: #3d3d3d;"&gt;Hi Thang,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="font-size: 12px; font-family: arial; color: #3d3d3d;"&gt;Can you please post your script and complete &lt;A class="jive-link-external-small" href="http://ydk.cisco.com/py/docs/guides/introduction.html#logging" rel="nofollow" style="font-weight: inherit; font-style: inherit; font-family: inherit; color: #0a63a7;" target="_blank"&gt;logs&lt;/A&gt;?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="font-size: 12px; font-family: arial; color: #3d3d3d;"&gt;Thanks,&lt;/P&gt;&lt;P style="font-size: 12px; font-family: arial; color: #3d3d3d;"&gt;Abhi&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 04 Oct 2017 17:35:36 GMT</pubDate>
      <guid>https://community.cisco.com/t5/tools/using-the-executor-service/m-p/3578732#M2829</guid>
      <dc:creator>abhirame</dc:creator>
      <dc:date>2017-10-04T17:35:36Z</dc:date>
    </item>
    <item>
      <title>Re: Using the Executor service</title>
      <link>https://community.cisco.com/t5/tools/using-the-executor-service/m-p/3578733#M2830</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Abhi,&lt;/P&gt;&lt;P&gt;Here is my script&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;=================&lt;/P&gt;&lt;P&gt;from __future__ import print_function&lt;/P&gt;&lt;P&gt;from __future__ import absolute_import&lt;/P&gt;&lt;P&gt;from ydk.types import Empty&lt;/P&gt;&lt;P&gt;from ydk.services import CRUDService&lt;/P&gt;&lt;P&gt;from ydk.services import ExecutorService&lt;/P&gt;&lt;P&gt;import logging&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;from session_mgr import establish_session, init_logging&lt;/P&gt;&lt;P&gt;from ydk.models.lumentum.ietf_netconf import Get, GetConfig&lt;/P&gt;&lt;P&gt;from ydk.errors import YPYError&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;def srv_run(crud_service, session):&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # GET&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; service = ExecutorService()&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; conf = GetConfig()&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; service.execute_rpc(service, session, conf)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;if __name__ == "__main__":&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; init_logging()&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; provider = establish_session()&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; crud_service = CRUDService()&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; srv_run(crud_service, provider)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; exit()&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;==============&lt;/P&gt;&lt;P&gt;And the log&lt;/P&gt;&lt;P&gt;tdo@ubuntu:~/ydk-gen/gen-api/python$ ./exec.py -u thang -p mypassword --host 10.100.211.201&lt;/P&gt;&lt;P&gt;Establishing connection with device 10.100.211.201:830 using ssh :&lt;/P&gt;&lt;P&gt;Path where models are to be downloaded: /home/tdo/.ydk/10.100.211.201:830&lt;/P&gt;&lt;P&gt;Connected to 10.100.211.201 on port 830 using ssh with timeout of -1&lt;/P&gt;&lt;P&gt;Connected to 10.100.211.201 on port 830 using ssh with timeout of -1&lt;/P&gt;&lt;P&gt;connection established...&lt;/P&gt;&lt;P&gt;Traceback (most recent call last):&lt;/P&gt;&lt;P&gt;&amp;nbsp; File "./exec.py", line 38, in &amp;lt;module&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; srv_run(crud_service, provider)&lt;/P&gt;&lt;P&gt;&amp;nbsp; File "./exec.py", line 31, in srv_run&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; service.execute_rpc(service, session, conf)&lt;/P&gt;&lt;P&gt;&amp;nbsp; File "/home/tdo/.local/lib/python2.7/site-packages/ydk/services/executor_service.py", line 32, in execute_rpc&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return self._es.execute_rpc(provider, entity, top_entity)&lt;/P&gt;&lt;P&gt;&amp;nbsp; File "/usr/lib/python2.7/contextlib.py", line 35, in __exit__&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; self.gen.throw(type, value, traceback)&lt;/P&gt;&lt;P&gt;&amp;nbsp; File "/home/tdo/.local/lib/python2.7/site-packages/ydk/errors/error_handler.py", line 82, in handle_runtime_error&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; _raise(_exc)&lt;/P&gt;&lt;P&gt;&amp;nbsp; File "/home/tdo/.local/lib/python2.7/site-packages/ydk/errors/error_handler.py", line 56, in _raise&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; raise exc&lt;/P&gt;&lt;P&gt;ydk.errors.YPYServiceError:&amp;nbsp; incompatible function arguments. The following argument types are supported:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1. (self: ydk_.services.ExecutorService, provider: ydk_.providers.ServiceProvider, entity: ydk_.types.Entity, top_entity: ydk_.types.Entity=None) -&amp;gt; ydk_.types.Entity&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Invoked with: &amp;lt;ydk_.services.ExecutorService object at 0x7f834a9ca0a0&amp;gt;, &amp;lt;ydk.services.executor_service.ExecutorService object at 0x7f834a9dc5f0&amp;gt;, &amp;lt;ydk_.providers.NetconfServiceProvider object at 0x7f834a9ca570&amp;gt;, &amp;lt;ydk.models.lumentum.ietf_netconf.GetConfig object at 0x7f834a9dc9b0&amp;gt;&lt;/P&gt;&lt;P&gt;Disconnected from device&lt;/P&gt;&lt;P&gt;Disconnected from device&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 04 Oct 2017 18:16:21 GMT</pubDate>
      <guid>https://community.cisco.com/t5/tools/using-the-executor-service/m-p/3578733#M2830</guid>
      <dc:creator>ttdo</dc:creator>
      <dc:date>2017-10-04T18:16:21Z</dc:date>
    </item>
    <item>
      <title>Re: Using the Executor service</title>
      <link>https://community.cisco.com/t5/tools/using-the-executor-service/m-p/3578734#M2831</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Thang,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As the error says, the arguments used for execute_rpc() function are wrong. Try the below :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3d3d3d; font-family: arial; font-size: 12px;"&gt;service.execute_rpc(service, session, conf)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you are interested in using netconf RPCs like get-config, you could look at netconf service. See an example &lt;A href="https://github.com/CiscoDevNet/ydk-py-samples/blob/7f69609e2060c8503d72d06ea3b06bd53346a075/samples/basic/netconf/models/openconfig/openconfig-terminal-device/nc-get-config-oc-terminal-device-10-ydk.py#L78"&gt;here&lt;/A&gt;.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 04 Oct 2017 19:08:10 GMT</pubDate>
      <guid>https://community.cisco.com/t5/tools/using-the-executor-service/m-p/3578734#M2831</guid>
      <dc:creator>abhirame</dc:creator>
      <dc:date>2017-10-04T19:08:10Z</dc:date>
    </item>
  </channel>
</rss>

