blob: f44c10d2f343841eaaa9bd441d6f425e3728fcba [file] [log] [blame]
#!/usr/bin/env python3
import os
import sys
# ssh_utility is in ../lib
from ssh_utility import SSHRemoteclient
# ---------Set sys.path for pluqin execution---------------------------------------
# Absolute path to this plugin
abs_path = os.path.abspath(os.path.dirname(sys.argv[0]))
# full_path to plugins parent directory
full_path = abs_path.split("plugins")[0]
sys.path.append(full_path)
# Walk path and append to sys.path
for root, dirs, files in os.walk(full_path):
for found_dir in dirs:
sys.path.append(os.path.join(root, found_dir))
def scp_remote_file(hostname, username, password, filename, local_dir_path):
r"""
Description of argument(s):
hostname Name/IP of the remote (targeting) host
username User on the remote host with access to files
password Password for user on remote host
filename Filename with full path on remote host
Filename can contain wild cards for multiple files
local_dir_path Location to store file on local host
"""
ssh_remoteclient = SSHRemoteclient(hostname, username, password)
if ssh_remoteclient.ssh_remoteclient_login():
# Obtain scp connection.
ssh_remoteclient.scp_connection()
if ssh_remoteclient.scpclient:
if isinstance(filename, list):
for each_file in filename:
ssh_remoteclient.scp_file_from_remote(
each_file, local_dir_path
)
else:
ssh_remoteclient.scp_file_from_remote(filename, local_dir_path)
# Close ssh/scp session
if ssh_remoteclient:
ssh_remoteclient.ssh_remoteclient_disconnect()