def _delete_files(host_ip, path): cmd = host_plugin.HostShellCmd() cmd.command = "rm -rf %s*" % path test_util.test_logger("Delete files: %s in Host: %s" % (path, host_ip)) http.json_dump_post( testagent.build_http_path(host_ip, host_plugin.HOST_SHELL_CMD_PATH), cmd)
def check(self): super(zstack_kvm_volume_file_checker, self).check() volume = self.test_obj.volume volume_installPath = volume.installPath if not volume_installPath: test_util.test_logger('Check result: [installPath] is Null for [volume uuid: ] %s. Can not check volume file existence' % volume.uuid) return self.judge(False) host = test_lib.lib_get_volume_host(volume) if not host: test_util.test_logger('Check result: can not find Host, who is belonged to same Zone Uuid of [volume uuid: ] %s. Can not check volume file existence' % volume.uuid) return self.judge(False) cmd = host_plugin.HostShellCmd() file_exist = "file_exist" cmd.command = '[ -f %s ] && echo %s' % (volume_installPath, file_exist) rspstr = http.json_dump_post(testagent.build_http_path(host.managementIp, host_plugin.HOST_SHELL_CMD_PATH), cmd) rsp = jsonobject.loads(rspstr) output = jsonobject.dumps(rsp.stdout) if file_exist in output: test_util.test_logger('Check result: [volume file: ] %s exist on [host name:] %s .' % (volume.uuid, host.name)) return self.judge(True) else: test_util.test_logger('Check result: [volume file: ] %s does not exist on [host name:] %s .' % (volume.uuid, host.name)) return self.judge(False)
def _umount_folder_violently(host_ip, path): cmd = host_plugin.HostShellCmd() cmd.command = "umount %s" % path try: http.json_dump_post(testagent.build_http_path(host_ip, host_plugin.HOST_SHELL_CMD_PATH), cmd) except Exception as e: err = linux.get_exception_stacktrace() test_util.test_logger("Fail to umount folder: %s in Host: %s" % (path, host_ip)) test_util.test_logger(err) test_util.test_logger("Umount folder: %s in Host: %s" % (path, host_ip))
def _rm_folder_contents_violently(host_ip, path): cmd = host_plugin.HostShellCmd() cmd.command = "rm -rf %s/*" % path try: http.json_dump_post(testagent.build_http_path(host_ip, host_plugin.HOST_SHELL_CMD_PATH), cmd) except Exception as e: err = linux.get_exception_stacktrace() test_util.test_logger("Fail to delete contents in folder: %s in Host: %s" % (path, host_ip)) test_util.test_logger(err) test_util.test_logger("Successfully delete contents in folder: %s in Host: %s" % (path, host_ip))
def check_file_exist(self, volume, volume_installPath, host): cmd = host_plugin.HostShellCmd() file_exist = "file_exist" cmd.command = '[ -f %s ] && echo %s' % (volume_installPath, file_exist) rspstr = http.json_dump_post(testagent.build_http_path(host.managementIp, host_plugin.HOST_SHELL_CMD_PATH), cmd) rsp = jsonobject.loads(rspstr) output = jsonobject.dumps(rsp.stdout) if file_exist in output: test_util.test_logger('Check result: [volume:] %s [file:] %s exist on [host name:] %s .' % (volume.uuid, volume_installPath, host.managementIp)) return self.judge(True) else: test_util.test_logger('Check result: [volume:] %s [file:] %s does not exist on [host name:] %s .' % (volume.uuid, volume_installPath, host.managementIp)) return self.judge(False)
def print_iptables(vm): host = test_lib.lib_find_host_by_vm(vm) try: if not host.managementIp: test_util.test_logger('did not find host for vm: %s ' % vm.uuid) return except: test_util.test_logger('did not find host for vm: %s ' % vm.uuid) return host_cmd = host_plugin.HostShellCmd() host_cmd.command = 'iptables-save' rspstr = http.json_dump_post(testagent.build_http_path(host.managementIp, host_plugin.HOST_SHELL_CMD_PATH), host_cmd) rsp = jsonobject.loads(rspstr) if rsp.return_code != 0: test_util.test_logger('can not dump iptables on host: %s; reason: %s' % (host.managementIp, rsp.stderr)) else: test_util.test_logger('iptables-save result on %s: %s' % (host.managementIp, rsp.stdout))