parsl.channels.SSHChannel

class parsl.channels.SSHChannel(hostname, username=None, password=None, script_dir=None, envs=None, gssapi_auth=False, skip_auth=False, port=22, **kwargs)[source]

SSH persistent channel. This enables remote execution on sites accessible via ssh. It is assumed that the user has setup host keys so as to ssh to the remote host. Which goes to say that the following test on the commandline should work:

>>> ssh <username>@<hostname>
__init__(hostname, username=None, password=None, script_dir=None, envs=None, gssapi_auth=False, skip_auth=False, port=22, **kwargs)[source]

Initialize a persistent connection to the remote system. We should know at this point whether ssh connectivity is possible

Parameters:hostname (-) – Hostname
KWargs:
  • username (string) : Username on remote system
  • password (string) : Password for remote system
  • port : The port designated for the ssh connection. Default is 22.
  • script_dir (string) : Full path to a script dir where generated scripts could be sent to.
  • envs (dict) : A dictionary of environment variables to be set when executing commands

Raises:

Methods

__init__(hostname[, username, password, …]) Initialize a persistent connection to the remote system.
abspath(path) Return the absolute path on the remote side.
close() Closes the channel.
execute_no_wait(cmd[, walltime, envs]) Execute asynchronousely without waiting for exitcode
execute_wait(cmd[, walltime, envs]) Synchronously execute a commandline string on the shell.
isdir(path) Return true if the path refers to an existing directory.
makedirs(path[, mode, exist_ok]) Create a directory on the remote side.
prepend_envs(cmd[, env])
pull_file(remote_source, local_dir) Transport file on the remote side to a local directory
push_file(local_source, remote_dir) Transport a local file to a directory on a remote machine

Attributes

script_dir This is a property.