aboutsummaryrefslogtreecommitdiffstats
path: root/resources/libraries/python/DUTSetup.py
diff options
context:
space:
mode:
authorPeter Mikus <pmikus@cisco.com>2019-02-01 14:51:06 +0000
committerPeter Mikus <pmikus@cisco.com>2019-02-04 17:40:00 +0000
commit22ff475dae7f9f09e8b3b7c899731803752761c0 (patch)
tree1d72a5cce150f8bf9d3bc518fc50396c5f305099 /resources/libraries/python/DUTSetup.py
parent446b1f79bc4190dc3bc140d6698d7cef9c5be283 (diff)
CSIT-1416 Remove installation of vpp from containers
Use parent system (Host, Container) installation of VPP. This will save the internet bandwith by skip installing of prerequisites packages. It will also skip dpkg install and simplify the process of initializing VPP inside container. Previosly initialization of VPP in container takes about 55s. With this patch it is reduced to 2-3s. This patch removes the bloated VOLUME creation between container sidecars (a.k.a nested container) and fixes the hugepage allocation. Change-Id: Ifa2be532edb77354657e1b84568bdc34993b00d0 Signed-off-by: Peter Mikus <pmikus@cisco.com>
Diffstat (limited to 'resources/libraries/python/DUTSetup.py')
-rw-r--r--resources/libraries/python/DUTSetup.py22
1 files changed, 22 insertions, 0 deletions
diff --git a/resources/libraries/python/DUTSetup.py b/resources/libraries/python/DUTSetup.py
index 4fc0e6fc9c..fd71a82440 100644
--- a/resources/libraries/python/DUTSetup.py
+++ b/resources/libraries/python/DUTSetup.py
@@ -614,6 +614,8 @@ class DUTSetup(object):
ssh = SSH()
ssh.connect(node)
+ cmd = 'ln -s /dev/null /etc/sysctl.d/80-vpp.conf || true'
+ ssh.exec_command_sudo(cmd, timeout=90)
cmd = "[[ -f /etc/redhat-release ]]"
return_code, _, _ = ssh.exec_command(cmd)
@@ -683,6 +685,26 @@ class DUTSetup(object):
return True
@staticmethod
+ def get_docker_mergeddir(node, uuid):
+ """Get Docker overlay for MergedDir diff.
+
+ :param node: DUT node.
+ :param uuid: Docker UUID.
+ :type node: dict
+ :type uuid: str
+ :returns: Docker container MergedDir.
+ :rtype: str
+ :raises RuntimeError: If getting output failed.
+ """
+ command = "docker inspect --format='"\
+ "{{{{.GraphDriver.Data.MergedDir}}}}' {uuid}".format(uuid=uuid)
+ message = 'Failed to get directory of {uuid} on host {host}'.\
+ format(uuid=uuid, host=node['host'])
+
+ stdout, _ = exec_cmd_no_error(node, command, sudo=True, message=message)
+ return stdout.strip()
+
+ @staticmethod
def get_huge_page_size(node):
"""Get default size of huge pages in system.