Part of libcloud.compute.ssh View Source View In Hierarchy
Known subclasses: libcloud.compute.ssh.MockSSHClient, libcloud.compute.ssh.ParamikoSSHClient, libcloud.compute.ssh.ShellOutSSHClient, libcloud.test.compute.test_deployment.MockClient
Base class representing a connection over SSH/SCP to a remote node.
Method | __init__ | @type hostname: C{str} @keyword hostname: Hostname or IP address to connect to. |
Method | connect | Connect to the remote node over SSH. |
Method | put | Upload a file to the remote node. |
Method | delete | Delete/Unlink a file on the remote node. |
Method | run | Run a command on a remote node. |
Method | close | Shutdown connection to the remote node. |
@type hostname: C{str} @keyword hostname: Hostname or IP address to connect to. @type port: C{int} @keyword port: TCP port to communicate on, defaults to 22. @type username: C{str} @keyword username: Username to use, defaults to root. @type password: C{str} @keyword password: Password to authenticate with. @type key: C{list} @keyword key: Private SSH keys to authenticate with.
Connect to the remote node over SSH. @return: True if the connection has been successfuly established, False otherwise. @rtype: C{bool}
Upload a file to the remote node. @type path: C{str} @keyword path: File path on the remote node. @type contents: C{str} @keyword contents: File Contents. @type chmod: C{int} @keyword chmod: chmod file to this after creation. @type mode: C{str} @keyword mode: Mode in which the file is opened. @return: Full path to the location where a file has been saved. @rtype: C{str}
Delete/Unlink a file on the remote node. @type path: C{str} @keyword path: File path on the remote node. @return: True if the file has been successfuly deleted, False otherwise. @rtype: C{bool}
Run a command on a remote node. @type cmd: C{str} @keyword cmd: Command to run. @return C{list} of [stdout, stderr, exit_status]
Shutdown connection to the remote node. @return: True if the connection has been successfuly closed, False otherwise. @rtype: C{bool}