def copy_files_from(address, client, username, password, port, remote_path, local_path, limit="", log_filename=None, verbose=False, timeout=600, interface=None): """ Copy files from a remote host (guest) using the selected client. :param client: Type of transfer client :param username: Username (if required) :param password: Password (if requried) :param remote_path: Path on the remote machine where we are copying from :param local_path: Path on the local machine where we are copying to :param address: Address of remote host(guest) :param limit: Speed limit of file transfer. :param log_filename: If specified, log all output to this file (SCP only) :param verbose: If True, log some stats using ``logging.debug`` (RSS only) :param timeout: The time duration (in seconds) to wait for the transfer to complete. :interface: The interface the neighbours attach to (only use when using ipv6 linklocal address.) :raise: Whatever ``remote_scp()`` raises """ if client == "scp": scp_from_remote(address, port, username, password, remote_path, local_path, limit, log_filename, timeout, interface=interface) elif client == "rss": log_func = None if verbose: log_func = logging.debug c = rss_client.FileDownloadClient(address, port, log_func) c.download(remote_path, local_path, timeout) c.close() else: raise error.TestError("No such file copy client: '%s', valid values" "are scp and rss" % client)
def copy_files_from(address, client, username, password, port, remote_path, local_path, limit="", log_filename=None, verbose=False, timeout=600): """ Copy files from a remote host (guest) using the selected client. @param client: Type of transfer client @param username: Username (if required) @param password: Password (if requried) @param remote_path: Path on the remote machine where we are copying from @param local_path: Path on the local machine where we are copying to @param address: Address of remote host(guest) @param limit: Speed limit of file transfer. @param log_filename: If specified, log all output to this file (SCP only) @param verbose: If True, log some stats using logging.debug (RSS only) @param timeout: The time duration (in seconds) to wait for the transfer to complete. @raise: Whatever remote_scp() raises """ if client == "scp": scp_from_remote(address, port, username, password, remote_path, local_path, limit, log_filename, timeout) elif client == "rss": log_func = None if verbose: log_func = logging.debug c = rss_client.FileDownloadClient(address, port, log_func) c.download(remote_path, local_path, timeout) c.close()