-# Copyright (c) 2017 Cisco and/or its affiliates.
+# Copyright (c) 2018 Cisco and/or its affiliates.
# 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:
self.engine.install_vpp()
self.engine.restart_vpp()
+ def restart_vpp_in_all_containers(self):
+ """Restart VPP on all containers."""
+ for container in self.containers:
+ self.engine.container = self.containers[container]
+ self.engine.restart_vpp()
+
def configure_vpp_in_all_containers(self, vat_template_file):
"""Configure VPP in all containers.
def install_vpp(self, install_dkms=False):
"""Install VPP inside a container.
- :param install_dkms: If install dkms package. This will impact install
- time. Dkms is required for installation of vpp-dpdk-dkms. Default is
- false.
+ :param install_dkms: If install dkms package. This will impact
+ install time. Dkms is required for installation of vpp-dpdk-dkms.
+ Default is false.
:type install_dkms: bool
"""
self.execute('ln -s /dev/null /etc/sysctl.d/80-vpp.conf')
def restart_vpp(self):
"""Restart VPP service inside a container."""
self.execute('supervisorctl restart vpp')
+ self.execute('cat /tmp/supervisord.log')
def create_vpp_startup_config(self,
config_filename='/etc/vpp/startup.conf'):
if cpuset_cpus:
corelist_workers = ','.join(str(cpu) for cpu in cpuset_cpus)
vpp_config.add_cpu_corelist_workers(corelist_workers)
- vpp_config.add_plugin_disable('dpdk_plugin.so')
+ vpp_config.add_plugin('disable', 'dpdk_plugin.so')
self.execute('mkdir -p /etc/vpp/')
self.execute('echo "{c}" | tee {f}'
"""Acquire a privileged system object where configuration is stored.
:param force: If a container exists, destroy it and create a new
- container.
+ container.
:type force: bool
:raises RuntimeError: If creating the container or writing the container
- config fails.
+ config fails.
"""
if self.is_container_present():
if force:
cpuset_mems = '--cpuset-mems={0}'.format(self.container.cpuset_mems)\
if self.container.cpuset_mems is not None else ''
+ # Temporary workaround - disabling due to bug in memif
+ cpuset_mems = ''
env = '{0}'.format(
' '.join('--env %s' % env for env in self.container.env))\