X-Git-Url: https://gerrit.fd.io/r/gitweb?p=csit.git;a=blobdiff_plain;f=resources%2Flibraries%2Fpython%2FVPPUtil.py;h=5881d189663ec88ffda7dbc638557dd345512a59;hp=32e1bb4e7b76067567722e6ff85beeb2c9270522;hb=c7eb2002bcd007520309feb3e11a26ff847a4e05;hpb=a8fcf79bbe184a7ef8c813239400cd8c9de89254 diff --git a/resources/libraries/python/VPPUtil.py b/resources/libraries/python/VPPUtil.py index 32e1bb4e7b..5881d18966 100644 --- a/resources/libraries/python/VPPUtil.py +++ b/resources/libraries/python/VPPUtil.py @@ -26,7 +26,7 @@ class VPPUtil(object): :param node: VPP node. :param additional_cmds: Additional commands that the vpp should print - settings for. + settings for. :type node: dict :type additional_cmds: tuple """ @@ -44,9 +44,37 @@ class VPPUtil(object): def_setting_tb_displayed['Custom Setting: {}'.format(cmd)] = cmd ssh = SSH() ssh.connect(node) - print("=" * 40) - for key, value in def_setting_tb_displayed.iteritems(): - (_, stdout, _) = ssh.exec_command_sudo('vppctl sh {}'.format(value)) - print("{} : {} \n".format(key, value)) - print(stdout) - print("=" * 40) + for _, value in def_setting_tb_displayed.items(): + ssh.exec_command_sudo('vppctl sh {}'.format(value)) + + @staticmethod + def stop_vpp_service(node): + """Stop VPP service on the specified node. + + :param node: VPP node. + :type node: dict + :raises RuntimeError: If VPP fails to stop. + """ + + ssh = SSH() + ssh.connect(node) + cmd = "service vpp stop" + ret_code, _, _ = ssh.exec_command_sudo(cmd, timeout=80) + if int(ret_code) != 0: + raise RuntimeError("VPP service did not shut down gracefully.") + + @staticmethod + def start_vpp_service(node): + """start VPP service on the specified node. + + :param node: VPP node. + :type node: dict + :raises RuntimeError: If VPP fails to start. + """ + + ssh = SSH() + ssh.connect(node) + cmd = "service vpp start" + ret_code, _, _ = ssh.exec_command_sudo(cmd) + if int(ret_code) != 0: + raise RuntimeError("VPP service did not start.")