summaryrefslogtreecommitdiffstats
path: root/core/vnf_controller_pvp.py
diff options
context:
space:
mode:
authorDino Simeon Madarang <dino.simeonx.madarang@intel.com>2015-07-15 09:22:07 +0100
committerMaryam Tahhan <maryam.tahhan@intel.com>2015-08-18 14:51:12 +0000
commit3af55a78fcd572f93b1a46178bffc4c8e90534f2 (patch)
treefeece4539f8d62c4a261ff777723205b918bc32a /core/vnf_controller_pvp.py
parentc4541ffb52274b3917c76e32733c0257ca3bbb76 (diff)
vnfs: Enable PVP using vhost-user
Enable booting of a VM with DPDK and run testpmd for PVP testing. * Added throughput and back2back tests with pvp deployment scenario in 01_testcases.conf * PVP requires DPDK 2.0 with VHOST_USER enabled and QEMU 2.2.0 * Tested on CentOS7 and Fedora 20 * Fix conflict with change 1078 Recent Changes: * Fix merge conflict (testcase.py and testcases.conf) * Remove QEMU_DIR. User must set QEMU_BIN * Set bidir traffic to True * Add flow for bi-directional traffic * Use working OVS_TAG ad2e649834be20dd01b1632799fe778106a96a2d * Merge change 1096 (src: Add QEMU makefile) * Set virtio-net-pci csum=off and other variables to off * Move hardcoded values to conf/* JIRA: VSPERF-56 Change-Id: I4ad184531064855493483d9833a7722c9f7d3576 Signed-off-by: Madarang, Dino Simeon <dino.simeonx.madarang@intel.com> Signed-off-by: Meghan Halton <meghan.halton@intel.com> Reviewed-by: Billy O Mahony <billy.o.mahony@intel.com> Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com> Reviewed-by: Martin Klozik <martinx.klozik@intel.com>
Diffstat (limited to 'core/vnf_controller_pvp.py')
-rw-r--r--core/vnf_controller_pvp.py21
1 files changed, 15 insertions, 6 deletions
diff --git a/core/vnf_controller_pvp.py b/core/vnf_controller_pvp.py
index 16c21869..1878db10 100644
--- a/core/vnf_controller_pvp.py
+++ b/core/vnf_controller_pvp.py
@@ -37,24 +37,33 @@ class VnfControllerPVP(IVnfController):
:param vnf_class: The VNF class to be used.
"""
self._logger = logging.getLogger(__name__)
- self._vnf_class = vnf_class
+ self._vnf_class = vnf_class()
self._deployment_scenario = "PVP"
- self._vnfs = []
- self._logger.debug('__init__ with ' + str(self._vnf_class))
+ self._vnfs = [vnf_class(deployment=self._deployment_scenario)]
+ self._logger.debug('__init__ with ' + str(self._vnfs[0]))
#TODO call vnf.xxx to carry out the required setup
def get_vnfs(self):
"""See IVnfController for description
"""
- self._logger.debug('get_vnfs with ' + str(self._vnf_class))
+ self._logger.debug('get_vnfs with ' + str(self._vnfs[0]))
return self._vnfs
def start(self):
"""See IVnfController for description
"""
- self._logger.debug('start with ' + str(self._vnf_class))
+ self._logger.debug('start with ' + str(self._vnfs[0]))
+ for vnf in self._vnfs:
+ vnf.start()
def stop(self):
"""See IVnfController for description
"""
- self._logger.debug('stop with ' + str(self._vnf_class))
+ self._logger.debug('stop with ' + str(self._vnfs[0]))
+ self._vnfs[0].stop()
+
+ def __enter__(self):
+ self.start()
+
+ def __exit__(self, type_, value, traceback):
+ self.stop()