summary |
shortlog |
log |
commit | commitdiff |
review |
tree
raw |
patch |
inline | side by side (from parent 1:
3c88007)
Change-Id: Idf7cbcf285ff130f771eb3878065e6daa869ac71
Signed-off-by: Michal Cmarada <mcmarada@cisco.com>
import paramiko
from robot.api import logger
import paramiko
from robot.api import logger
-from interruptingcow import timeout
from resources.libraries.python.honeycomb.HoneycombUtil import HoneycombError
from resources.libraries.python.honeycomb.HoneycombUtil import HoneycombError
# read OpenDaylight's hello message and capability list
self.get_response(
size=131072,
# read OpenDaylight's hello message and capability list
self.get_response(
size=131072,
err="Timeout on getting hello message."
)
err="Timeout on getting hello message."
)
if not self.channel.active:
raise HoneycombError("Channel closed on capabilities exchange.")
if not self.channel.active:
raise HoneycombError("Channel closed on capabilities exchange.")
- def get_response(self, size=4096, time_out=10, err="Unspecified Error."):
+ def get_response(self, size=4096, err="Unspecified Error."):
"""Iteratively read data from the receive buffer and catenate together
until message ends with the message delimiter, or
until timeout is reached.
:param size: Maximum number of bytes to read in one iteration.
"""Iteratively read data from the receive buffer and catenate together
until message ends with the message delimiter, or
until timeout is reached.
:param size: Maximum number of bytes to read in one iteration.
- :param time_out: Timeout value for getting the complete response.
:param err: Error message to provide when timeout is reached.
:type size: int
:param err: Error message to provide when timeout is reached.
:type size: int
:type err: str
:returns: Content of response.
:rtype: str
:type err: str
:returns: Content of response.
:rtype: str
- with timeout(time_out, exception=RuntimeError):
- while not reply.endswith(self.delimiter) or \
- self.channel.recv_ready():
- try:
- chunk = self.channel.recv(size)
- if not chunk:
- break
- reply += chunk
- if self.channel.exit_status_ready():
- logger.debug('Channel exit status ready.')
- break
- except socket.timeout:
- raise HoneycombError("Socket timeout.",
- enable_logging=False)
+ while not reply.endswith(self.delimiter) or \
+ self.channel.recv_ready():
+ try:
+ chunk = self.channel.recv(size)
+ if not chunk:
+ break
+ reply += chunk
+ if self.channel.exit_status_ready():
+ logger.debug('Channel exit status ready.')
+ break
+ except socket.timeout:
+ raise HoneycombError("Socket timeout.",
+ enable_logging=False)
except RuntimeError:
raise HoneycombError(err + " Content of buffer: {0}".format(reply),
except RuntimeError:
raise HoneycombError(err + " Content of buffer: {0}".format(reply),
- response += self.get_response(size, time_out, err)
+ response += self.get_response(size, err)
except HoneycombError:
break
except HoneycombError:
break
self.send(subscription)
reply = self.get_response(
self.send(subscription)
reply = self.get_response(
err="Timeout on notifications subscription."
)
err="Timeout on notifications subscription."
)
.format(time_out))
reply = self.get_response(
.format(time_out))
reply = self.get_response(
err="Timeout on getting notification."
)
err="Timeout on getting notification."
)
<name>4fe335c8-6fdc-4654-b12c-d256e9b39229</name>
<description>neutron port</description>
<link-up-down-trap-enable>enabled</link-up-down-trap-enable>
<name>4fe335c8-6fdc-4654-b12c-d256e9b39229</name>
<description>neutron port</description>
<link-up-down-trap-enable>enabled</link-up-down-trap-enable>
-<vhost-user xmlns="urn:opendaylight:params:xml:ns:yang:v3po">
+<vhost-user xmlns="http://fd.io/hc2vpp/yang/v3po">
<role>client</role>
<socket>/tmp/socket_4fe335c8-6fdc-4654-b12c-d256e9b39229</socket>
</vhost-user>
<role>client</role>
<socket>/tmp/socket_4fe335c8-6fdc-4654-b12c-d256e9b39229</socket>
</vhost-user>
-<type xmlns:x="urn:opendaylight:params:xml:ns:yang:v3po">x:vhost-user</type>
+<type xmlns:x="http://fd.io/hc2vpp/yang/v3po">x:vhost-user</type>
<enabled>true</enabled>
</interface>
</interfaces>
<enabled>true</enabled>
</interface>
</interfaces>
<name>4fe335c8-6fdc-4654-b12c-d256e9b39229</name>
<description>neutron port</description>
<link-up-down-trap-enable>enabled</link-up-down-trap-enable>
<name>4fe335c8-6fdc-4654-b12c-d256e9b39229</name>
<description>neutron port</description>
<link-up-down-trap-enable>enabled</link-up-down-trap-enable>
-<vhost-user xmlns="urn:opendaylight:params:xml:ns:yang:v3po">
+<vhost-user xmlns="http://fd.io/hc2vpp/yang/v3po">
<role>client</role>
<socket>/tmp/socket_4fe335c8-6fdc-4654-b12c-d256e9b39229</socket>
</vhost-user>
<role>client</role>
<socket>/tmp/socket_4fe335c8-6fdc-4654-b12c-d256e9b39229</socket>
</vhost-user>
-<type xmlns:x="urn:opendaylight:params:xml:ns:yang:v3po">x:vhost-user</type>
+<type xmlns:x="http://fd.io/hc2vpp/yang/v3po">x:vhost-user</type>
<enabled>true</enabled>
</interface>
</interfaces>
<enabled>true</enabled>
</interface>
</interfaces>
<name>d7611278-88ff-40e1-81e2-602e94e96fc7</name>
<description>neutron port</description>
<link-up-down-trap-enable>enabled</link-up-down-trap-enable>
<name>d7611278-88ff-40e1-81e2-602e94e96fc7</name>
<description>neutron port</description>
<link-up-down-trap-enable>enabled</link-up-down-trap-enable>
-<vhost-user xmlns="urn:opendaylight:params:xml:ns:yang:v3po">
+<vhost-user xmlns="http://fd.io/hc2vpp/yang/v3po">
<role>client</role>
<socket>/tmp/socket_d7611278-88ff-40e1-81e2-602e94e96fc7</socket>
</vhost-user>
<role>client</role>
<socket>/tmp/socket_d7611278-88ff-40e1-81e2-602e94e96fc7</socket>
</vhost-user>
-<type xmlns:x="urn:opendaylight:params:xml:ns:yang:v3po">x:vhost-user</type>
+<type xmlns:x="http://fd.io/hc2vpp/yang/v3po">x:vhost-user</type>
<enabled>true</enabled>
</interface>
</interfaces>
<enabled>true</enabled>
</interface>
</interfaces>
<name>1f96a665-4351-4984-b1a8-dc6f54683123</name>
<description>neutron port</description>
<link-up-down-trap-enable>enabled</link-up-down-trap-enable>
<name>1f96a665-4351-4984-b1a8-dc6f54683123</name>
<description>neutron port</description>
<link-up-down-trap-enable>enabled</link-up-down-trap-enable>
-<vhost-user xmlns="urn:opendaylight:params:xml:ns:yang:v3po">
+<vhost-user xmlns="http://fd.io/hc2vpp/yang/v3po">
<role>client</role>
<socket>/tmp/socket_1f96a665-4351-4984-b1a8-dc6f54683123</socket>
</vhost-user>
<role>client</role>
<socket>/tmp/socket_1f96a665-4351-4984-b1a8-dc6f54683123</socket>
</vhost-user>
-<type xmlns:x="urn:opendaylight:params:xml:ns:yang:v3po">x:vhost-user</type>
+<type xmlns:x="http://fd.io/hc2vpp/yang/v3po">x:vhost-user</type>
<enabled>true</enabled>
</interface>
</interfaces>
<enabled>true</enabled>
</interface>
</interfaces>
</target>
<default-operation>none</default-operation>
<config>
</target>
<default-operation>none</default-operation>
<config>
-<bridge-domains xmlns="urn:opendaylight:params:xml:ns:yang:v3po"
+<bridge-domains xmlns="http://fd.io/hc2vpp/yang/v3po"
xmlns:a="urn:ietf:params:xml:ns:netconf:base:1.0" a:operation="replace">
<bridge-domain>
<name>e86740a2-042c-4e64-a43b-cc224e0d5240</name>
xmlns:a="urn:ietf:params:xml:ns:netconf:base:1.0" a:operation="replace">
<bridge-domain>
<name>e86740a2-042c-4e64-a43b-cc224e0d5240</name>
<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces">
<interface>
<name>vxlan3</name>
<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces">
<interface>
<name>vxlan3</name>
-<type xmlns:v3po="urn:opendaylight:params:xml:ns:yang:v3po">
+<type xmlns:v3po="http://fd.io/hc2vpp/yang/v3po">
v3po:vxlan-tunnel</type>
<enabled>true</enabled>
v3po:vxlan-tunnel</type>
<enabled>true</enabled>
-<vxlan xmlns="urn:opendaylight:params:xml:ns:yang:v3po">
+<vxlan xmlns="http://fd.io/hc2vpp/yang/v3po">
<src>192.168.1.6</src>
<dst>192.168.1.7</dst>
<vni>9</vni>
<src>192.168.1.6</src>
<dst>192.168.1.7</dst>
<vni>9</vni>
<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces">
<interface>
<name>vxlan4</name>
<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces">
<interface>
<name>vxlan4</name>
-<type xmlns:v3po="urn:opendaylight:params:xml:ns:yang:v3po">
+<type xmlns:v3po="http://fd.io/hc2vpp/yang/v3po">
v3po:vxlan-tunnel</type>
<enabled>true</enabled>
v3po:vxlan-tunnel</type>
<enabled>true</enabled>
-<vxlan xmlns="urn:opendaylight:params:xml:ns:yang:v3po">
+<vxlan xmlns="http://fd.io/hc2vpp/yang/v3po">
<src>192.168.1.6</src>
<dst>192.168.1.7</dst>
<vni>9</vni>
<src>192.168.1.6</src>
<dst>192.168.1.7</dst>
<vni>9</vni>
<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces">
<interface>
<name>tap</name>
<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces">
<interface>
<name>tap</name>
-<type xmlns:v3po="urn:opendaylight:params:xml:ns:yang:v3po">v3po:tap</type>
+<type xmlns:v3po="http://fd.io/hc2vpp/yang/v3po">v3po:tap</type>
-<tap xmlns="urn:opendaylight:params:xml:ns:yang:v3po">
+<tap xmlns="http://fd.io/hc2vpp/yang/v3po">
<tap-name>tap</tap-name>
</tap>
</interface>
<tap-name>tap</tap-name>
</tap>
</interface>
<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces">
<interface>
<name>tap2</name>
<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces">
<interface>
<name>tap2</name>
-<type xmlns:v3po="urn:opendaylight:params:xml:ns:yang:v3po">v3po:tap</type>
+<type xmlns:v3po="http://fd.io/hc2vpp/yang/v3po">v3po:tap</type>
-<tap xmlns="urn:opendaylight:params:xml:ns:yang:v3po">
+<tap xmlns="http://fd.io/hc2vpp/yang/v3po">
<tap-name>tap</tap-name>
</tap>
</interface>
<tap-name>tap</tap-name>
</tap>
</interface>
<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces">
<interface>
<name>{interface}</name>
<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces">
<interface>
<name>{interface}</name>
-<sub-interfaces xmlns="urn:opendaylight:params:xml:ns:yang:vpp:vlan"/>
+<sub-interfaces xmlns="http://fd.io/hc2vpp/yang/vpp-vlan"/>
</interface>
</interfaces>
</config>
</interface>
</interfaces>
</config>
<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces">
<interface>
<name>{interface}</name>
<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces">
<interface>
<name>{interface}</name>
-<sub-interfaces xmlns="urn:opendaylight:params:xml:ns:yang:vpp:vlan">
+<sub-interfaces xmlns="http://fd.io/hc2vpp/yang/vpp-vlan">
<sub-interface>
<identifier>2420</identifier>
</sub-interface>
<sub-interface>
<identifier>2420</identifier>
</sub-interface>
<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces">
<interface>
<name>{interface}</name>
<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces">
<interface>
<name>{interface}</name>
-<sub-interfaces xmlns="urn:opendaylight:params:xml:ns:yang:vpp:vlan">
+<sub-interfaces xmlns="http://fd.io/hc2vpp/yang/vpp-vlan">
<sub-interface xmlns:a="urn:ietf:params:xml:ns:netconf:base:1.0" a:operation="replace">
<identifier>2420</identifier>
<match>
<sub-interface xmlns:a="urn:ietf:params:xml:ns:netconf:base:1.0" a:operation="replace">
<identifier>2420</identifier>
<match>
<get>
<filter xmlns:ns0="urn:ietf:params:xml:ns:netconf:base:1.0"
ns0:type="subtree">
<get>
<filter xmlns:ns0="urn:ietf:params:xml:ns:netconf:base:1.0"
ns0:type="subtree">
- <vpp-state xmlns="urn:opendaylight:params:xml:ns:yang:vpp:management">
+ <vpp-state xmlns="http://fd.io/hc2vpp/yang/vpp-management">
<version/>
</vpp-state>
</filter>
<version/>
</vpp-state>
</filter>