summaryrefslogtreecommitdiffstats
path: root/framework/src/onos/tools/test/scenarios/bin/find-link-in-cluster.py
diff options
context:
space:
mode:
authorAshlee Young <ashlee@onosfw.com>2015-09-22 12:49:09 -0700
committerAshlee Young <ashlee@onosfw.com>2015-09-22 12:49:09 -0700
commit81391595dca425ae58e2294898f09f11d9a32dbc (patch)
treef5d65c39a732150b2b29daa8de98a35d1236d3fb /framework/src/onos/tools/test/scenarios/bin/find-link-in-cluster.py
parent0aa37e73dcb3a55b8d889b0c32ff74055551b1f3 (diff)
bringing src to commit tag 65d551b50e782b0c1ea76c1a9ed1c5a801a5a7e4
Change-Id: Ib2da78962eaef856f418636c31b0f5c84286244f
Diffstat (limited to 'framework/src/onos/tools/test/scenarios/bin/find-link-in-cluster.py')
-rwxr-xr-xframework/src/onos/tools/test/scenarios/bin/find-link-in-cluster.py54
1 files changed, 54 insertions, 0 deletions
diff --git a/framework/src/onos/tools/test/scenarios/bin/find-link-in-cluster.py b/framework/src/onos/tools/test/scenarios/bin/find-link-in-cluster.py
new file mode 100755
index 00000000..928531fd
--- /dev/null
+++ b/framework/src/onos/tools/test/scenarios/bin/find-link-in-cluster.py
@@ -0,0 +1,54 @@
+#! /usr/bin/env python
+
+import requests
+import sys
+
+from requests.auth import HTTPBasicAuth
+
+if len(sys.argv) != 9:
+ print "usage: find-link-in-cluster onos-node name cluster-id expected-length src-device-id src-port dst-device-id dst-port"
+ sys.exit(1)
+
+node = sys.argv[1]
+name = sys.argv[2]
+cluster = sys.argv[3]
+length = int(sys.argv[4])
+srcDeviceId = sys.argv[5]
+srcPort = sys.argv[6]
+dstDeviceId = sys.argv[7]
+dstPort = sys.argv[8]
+
+
+linksRequest = requests.get('http://' + node + ':8181/onos/v1/topology/clusters/'
+ + cluster + '/links',
+ auth=HTTPBasicAuth('onos', 'rocks'))
+
+if linksRequest.status_code != 200:
+ print linksRequest.text
+ sys.exit(1)
+
+linksJson = linksRequest.json()
+linksLength = len(linksJson["links"])
+
+if linksLength != length:
+ print "Expected length {} but got {}".format(length, linksLength)
+ sys.exit(1)
+
+for link in linksJson["links"]:
+ if srcDeviceId == link["src"]["device"] and srcPort == link["src"]["port"]:
+ if dstDeviceId == link["dst"]["device"] and dstPort == link["dst"]["port"]:
+ print "@stc " + name + "SrcDevice=" + link["src"]["device"]
+ print "@stc " + name + "SrcPort=" + link["src"]["port"]
+ print "@stc " + name + "DstDevice=" + link["dst"]["device"]
+ print "@stc " + name + "DstPort=" + link["dst"]["port"]
+ print "@stc " + name + "Type=" + link["type"]
+ print "@stc " + name + "State=" + link["state"]
+ sys.exit(0)
+
+print "Could not find link from {}:{} to {}:{}"\
+ .format(srcDeviceId, srcPort, dstDeviceId, dstPort)
+sys.exit(1)
+
+
+
+