X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=resources%2Flibraries%2Fpython%2FVPPUtil.py;h=ca63fa6cea52b9c0816f94164104f3e71198cba8;hb=eb2723bbf4f66cd9b658b220b91c800ad1beace4;hp=7dabb4fc613fe7614cc09ae399ed424a13dec77d;hpb=3d5a75be5a88931690898e0fe52e4f48bc67c5ed;p=csit.git diff --git a/resources/libraries/python/VPPUtil.py b/resources/libraries/python/VPPUtil.py index 7dabb4fc61..ca63fa6cea 100644 --- a/resources/libraries/python/VPPUtil.py +++ b/resources/libraries/python/VPPUtil.py @@ -1,4 +1,4 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. +# Copyright (c) 2020 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: @@ -113,8 +113,19 @@ class VPPUtil: :param node: Topology node. :type node: dict """ - cmd = u"command -v vpp" - exec_cmd_no_error(node, cmd, message=u"VPP is not installed!") + DUTSetup.verify_program_installed(node, u"vpp") + + @staticmethod + def adjust_privileges(node): + """Adjust privileges to control VPP without sudo. + + :param node: Topology node. + :type node: dict + """ + cmd = u"chmod -R o+rwx /run/vpp" + exec_cmd_no_error( + node, cmd, sudo=True, message=u"Failed to adjust privileges!", + retries=120) @staticmethod def verify_vpp_started(node): @@ -137,16 +148,18 @@ class VPPUtil: @staticmethod def verify_vpp(node): """Verify that VPP is installed and started on the specified topology - node. + node. Adjust privileges so user can connect without sudo. :param node: Topology node. :type node: dict :raises RuntimeError: If VPP service fails to start. """ - VPPUtil.verify_vpp_installed(node) + DUTSetup.verify_program_installed(node, 'vpp') try: # Verify responsiveness of vppctl. VPPUtil.verify_vpp_started(node) + # Adjust privileges. + VPPUtil.adjust_privileges(node) # Verify responsiveness of PAPI. VPPUtil.show_log(node) VPPUtil.vpp_show_version(node)