aboutsummaryrefslogtreecommitdiffstats
path: root/yardstick/common/utils.py
diff options
context:
space:
mode:
authorRoss Brattain <ross.b.brattain@intel.com>2017-04-24 23:25:48 +0200
committerRoss Brattain <ross.b.brattain@intel.com>2017-08-14 16:22:51 -0700
commita4d2958ddb727c2aaf46956cbdbf7718bfd0be89 (patch)
treedcd1293eb6306fd1a955018c26d59e7e0293c864 /yardstick/common/utils.py
parentfb57af27e97bbd27e5eeeeddc766518e3c700f3c (diff)
PROX VNF and TG
PROX was added to samplevnf project https://git.opnfv.org/samplevnf/tree/VNFs/DPPD-PROX JIRA: YARDSTICK-638 Change-Id: If9875b1130c6bed87deb8720b0d8b28ede9289d9 Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
Diffstat (limited to 'yardstick/common/utils.py')
-rw-r--r--yardstick/common/utils.py54
1 files changed, 29 insertions, 25 deletions
diff --git a/yardstick/common/utils.py b/yardstick/common/utils.py
index 759f43d7c..f2455be3a 100644
--- a/yardstick/common/utils.py
+++ b/yardstick/common/utils.py
@@ -297,7 +297,7 @@ def get_ip_version(ip_addr):
return address.version
-def ip_to_hex(ip_addr):
+def ip_to_hex(ip_addr, separator=''):
try:
address = ipaddress.ip_address(six.text_type(ip_addr))
except ValueError:
@@ -306,7 +306,11 @@ def ip_to_hex(ip_addr):
if address.version != 4:
return ip_addr
- return '{:08x}'.format(int(address))
+
+ if not separator:
+ return '{:08x}'.format(int(address))
+
+ return separator.join('{:02x}'.format(octet) for octet in address.packed)
def try_int(s, *args):
@@ -319,6 +323,29 @@ def try_int(s, *args):
class SocketTopology(dict):
+ @classmethod
+ def parse_cpuinfo(cls, cpuinfo):
+ socket_map = {}
+
+ lines = cpuinfo.splitlines()
+
+ core_details = []
+ core_lines = {}
+ for line in lines:
+ if line.strip():
+ name, value = line.split(":", 1)
+ core_lines[name.strip()] = try_int(value.strip())
+ else:
+ core_details.append(core_lines)
+ core_lines = {}
+
+ for core in core_details:
+ socket_map.setdefault(core["physical id"], {}).setdefault(
+ core["core id"], {})[core["processor"]] = (
+ core["processor"], core["core id"], core["physical id"])
+
+ return cls(socket_map)
+
def sockets(self):
return sorted(self.keys())
@@ -331,29 +358,6 @@ class SocketTopology(dict):
proc in procs)
-def parse_cpuinfo(cpuinfo):
- socket_map = {}
-
- lines = cpuinfo.splitlines()
-
- core_details = []
- core_lines = {}
- for line in lines:
- if line.strip():
- name, value = line.split(":", 1)
- core_lines[name.strip()] = try_int(value.strip())
- else:
- core_details.append(core_lines)
- core_lines = {}
-
- for core in core_details:
- socket_map.setdefault(core["physical id"], {}).setdefault(
- core["core id"], {})[core["processor"]] = (
- core["processor"], core["core id"], core["physical id"])
-
- return SocketTopology(socket_map)
-
-
def config_to_dict(config):
return {section: dict(config.items(section)) for section in
config.sections()}