Пример #1
0
def kill_master_monitor_process(parser):
	"""
	kill master monitor process on hostOS
	"""
	pid = mmsh.get_pid()
	cmd = cmd_kill.kill_cmd(pid, 9)
	subprocess.Popen(cmd.split(), stdout=subprocess.PIPE).communicate()
Пример #2
0
def kill_vm_process(parser):
	"""
	kill vm process on hostOS
	"""
	ssh = shell_server.get_ssh(parser["HostOS_ip"]
                              , parser["HostOS_usr"]
                              , parser["HostOS_pwd"])
	pid = FTVM.get_pid(parser["vm_name"], parser["HostOS_ip"], ssh)
	cmd = cmd_kill.kill_cmd(pid, 9)
	s_stdin, s_stdout, s_stderr = ssh.exec_command("sudo "+cmd)
	ssh.close()
Пример #3
0
def kill_libvirt_process(parser):
	"""
	kill libvirt process on hostOS
	"""
	ssh = shell_server.get_ssh(parser["GuestOS_ip"]
                              , parser["GuestOS_usr"]
                              , parser["GuestOS_pwd"])
	pid = FTsystem.get_pid(ssh)
	cmd = cmd_kill.kill_cmd(pid, 9)
	s_stdin, s_stdout, s_stderr = ssh.exec_command("sudo "+cmd)
	ssh.close()
Пример #4
0
def exec_slave_vm_guestOS_crasher(parser):
    """
	execute level 1 crasher in vm 
	kill init process

	:param parser: is a dict, get from Test config file
	"""
    if "pro_wait_time_exe_L1_crasher" in parser.keys(
    ):  #若pro_wait_time_exe_L1_crasher存在於parser
        time.sleep(int(parser["pro_wait_time_exe_L1_crasher"]))

    ssh = shell_server.get_ssh(parser["GuestOS_ip_S"], parser["GuestOS_usr"],
                               parser["GuestOS_pwd"])  #獲得ssh
    cmd = "sudo " + cmd_kill.kill_cmd(1, 11)  #獲得kill -SIGSEGV 1之指令字串
    #print cmd
    s_stdin, s_stdout, s_stderr = ssh.exec_command(cmd)  #透過ssh執行指令
    ssh.close()
Пример #5
0
def kill_backup_vm_process(parser):
    """
	kill vm process on backupOS

	:param parser: is a dict, get from Test config file
	"""
    if "pro_wait_time_kill_vm_p" in parser.keys(
    ):  #若pro_wait_time_kill_vm_p存在於parser
        time.sleep(int(parser["pro_wait_time_kill_vm_p"]))
    #print "kill"

    ssh = shell_server.get_ssh(parser["BackupOS_ip"], parser["BackupOS_usr"],
                               parser["BackupOS_pwd"])  #獲得ssh
    pid = FTVM.get_pid(parser["vm_name"], parser["BackupOS_ip"],
                       ssh)  #獲得VM之pid
    cmd = cmd_kill.kill_cmd(pid, 9)  #獲得kill vm process之指令字串
    print cmd
    s_stdin, s_stdout, s_stderr = ssh.exec_command("sudo " + cmd)  #透過ssh執行指令
    ssh.close()
Пример #6
0
def exec_L1_hostOS_crasher(parser):
    """
	execute level 1 crasher in hostOS

	:param parser: is a dict, get from Test config file
	"""
    if "pro_wait_time_exe_L1_crasher" in parser.keys(
    ):  #若pro_wait_time_exe_L1_crasher存在於parser
        time.sleep(int(parser["pro_wait_time_exe_L1_crasher"]))

    ssh = shell_server.get_ssh(parser["PrimaryOS_ip"], parser["PrimaryOS_usr"],
                               parser["PrimaryOS_pwd"])  #獲得ssh
    cmd = "sudo " + cmd_kill.kill_cmd(1, 11)  #獲得kill -SIGSEGV 1之指令字串
    #print cmd
    s_stdin, s_stdout, s_stderr = ssh.exec_command(cmd)  #透過ssh執行指令
    #print "stdout",s_stdout.read()
    #print "stderr",s_stderr.read()
    ssh.close()
    """
Пример #7
0
def kill_libvirt_process(parser):
    """
	kill libvirt process on hostOS

	:param parser: is a dict, get from Test config file
	"""
    if "pro_wait_time_kill_libvirt_p" in parser.keys(
    ):  #若pro_wait_time_kill_libvirt_p存在於parser
        time.sleep(int(parser["pro_wait_time_kill_libvirt_p"]))

    ssh = shell_server.get_ssh(parser["PrimaryOS_ip"], parser["PrimaryOS_usr"],
                               parser["PrimaryOS_pwd"])  #獲得ssh
    pid = FTsystem.get_pid(ssh)  #透過ssh獲得libvirt之pid
    if pid == False:
        ssh.close()
        raise TA_error.Process_Error("can not get libvirt pid")
    print "libvirt pid %s" % pid
    cmd = cmd_kill.kill_cmd(pid, 9)  #獲得kill libvirt process之指令字串
    s_stdin, s_stdout, s_stderr = ssh.exec_command("sudo " + cmd)  #透過ssh執行指令
    ssh.close()
Пример #8
0
def kill_master_monitor_process(parser):
    """
	kill master monitor process on hostOS

	:param parser: is a dict, get from Test config file
	"""
    ssh = shell_server.get_ssh(parser["BackupOS_ip"], parser["BackupOS_usr"],
                               parser["BackupOS_pwd"])  #獲得ssh

    if "pro_wait_time_kill_mm_p" in parser.keys(
    ):  #若pro_wait_time_kill_mm_p存在於parser
        time.sleep(int(parser["pro_wait_time_kill_mm_p"]))

    pid = master_monitor.get_pid(ssh)  #獲得master monitor之pid
    if pid == False:
        raise TA_error.Process_Error("can not get master monitor pid")
    print pid
    cmd = "sudo " + cmd_kill.kill_cmd(pid,
                                      9)  #獲得kill master monitor process之指令字串
    s_stdin, s_stdout, s_stderr = ssh.exec_command("sudo " + cmd)  #透過ssh執行指令
    #subprocess.Popen(cmd.split(), stdout=subprocess.PIPE).communicate() #執行指令
    ssh.close()