X-Git-Url: https://gerrit.fd.io/r/gitweb?p=csit.git;a=blobdiff_plain;f=resources%2Flibraries%2Fpython%2FVPPUtil.py;h=5881d189663ec88ffda7dbc638557dd345512a59;hp=da59d1958d998f2ffd093cbd7032eadf94b94061;hb=c7eb2002bcd007520309feb3e11a26ff847a4e05;hpb=cf561a6e3d4c4fbd78ab6c9d0a9aa817bb3300fc diff --git a/resources/libraries/python/VPPUtil.py b/resources/libraries/python/VPPUtil.py index da59d1958d..5881d18966 100644 --- a/resources/libraries/python/VPPUtil.py +++ b/resources/libraries/python/VPPUtil.py @@ -46,3 +46,35 @@ class VPPUtil(object): ssh.connect(node) 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.")