aboutsummaryrefslogtreecommitdiffstats
path: root/yardstick
diff options
context:
space:
mode:
authorDeepak S <deepak.s@linux.intel.com>2016-12-30 09:20:15 -0800
committerDeepak S <deepak.s@linux.intel.com>2017-01-19 08:26:54 +0530
commitff1b12cbd92e39503e37833b4a94f30574c3ccbb (patch)
tree8da929117b2b9d63e4989ee9e4426468cda9e30e /yardstick
parent1462b444d539e68eb84ece4b12b6a8521d8c64b7 (diff)
Introducing the collector to subscribe/publish the KPIs for yardstick plot
v2: Added unit tests to keep test coverage :) JIRA: YARDSTICK-482 Change-Id: I9281b00a4b619cc04550cb623c027ee5765c4974 Signed-off-by: Deepak S <deepak.s@linux.intel.com>
Diffstat (limited to 'yardstick')
-rw-r--r--yardstick/network_services/__init__.py0
-rw-r--r--yardstick/network_services/collector/__init__.py0
-rw-r--r--yardstick/network_services/collector/publisher.py29
-rw-r--r--yardstick/network_services/collector/subscriber.py39
4 files changed, 68 insertions, 0 deletions
diff --git a/yardstick/network_services/__init__.py b/yardstick/network_services/__init__.py
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/yardstick/network_services/__init__.py
diff --git a/yardstick/network_services/collector/__init__.py b/yardstick/network_services/collector/__init__.py
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/yardstick/network_services/collector/__init__.py
diff --git a/yardstick/network_services/collector/publisher.py b/yardstick/network_services/collector/publisher.py
new file mode 100644
index 000000000..004d4774b
--- /dev/null
+++ b/yardstick/network_services/collector/publisher.py
@@ -0,0 +1,29 @@
+# Copyright (c) 2016-2017 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+"""This module implements stub for publishing results in yardstick format."""
+
+
+class Publisher(object):
+ """Class that handles publishing test results in yardstick format."""
+
+ def __init__(self):
+ super(Publisher, self).__init__()
+
+ def start(self):
+ """Nothing to do, yet"""
+ pass
+
+ def stop(self):
+ """Nothing to do, yet"""
+ pass
diff --git a/yardstick/network_services/collector/subscriber.py b/yardstick/network_services/collector/subscriber.py
new file mode 100644
index 000000000..3bcb20876
--- /dev/null
+++ b/yardstick/network_services/collector/subscriber.py
@@ -0,0 +1,39 @@
+# Copyright (c) 2016-2017 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+"""This module implements stub for publishing results in yardstick format."""
+
+
+class Collector(object):
+ """Class that handles dictionary of results in yardstick-plot format."""
+
+ def __init__(self, traffic_profile, vnfs):
+ super(Collector, self).__init__()
+ self.traffic_profile = traffic_profile
+ self.service = vnfs
+
+ def start(self):
+ """Nothing to do, yet"""
+ pass
+
+ def stop(self):
+ """Nothing to do, yet"""
+ pass
+
+ @classmethod
+ def get_kpi(cls, vnf):
+ """Returns dictionary of results in yardstick-plot format
+
+ :return:
+ """
+ return {vnf.name: vnf.collect_kpi()}