summaryrefslogtreecommitdiff
path: root/lbup/ssh_remote.py
diff options
context:
space:
mode:
Diffstat (limited to 'lbup/ssh_remote.py')
-rw-r--r--lbup/ssh_remote.py25
1 files changed, 25 insertions, 0 deletions
diff --git a/lbup/ssh_remote.py b/lbup/ssh_remote.py
new file mode 100644
index 0000000..634c86a
--- /dev/null
+++ b/lbup/ssh_remote.py
@@ -0,0 +1,25 @@
+class SSHRemote:
+ """
+ Specification of an SSH remote host, represented by a combination of host,
+ port and username, plus an optional proxy remote.
+ :param str host:
+ :param int port:
+ :param str username:
+ :param SSHRemote proxy_remote: proxy through which the connection should be
+ tunnelled
+ """
+ host = None
+ port = None
+ username = None
+ proxy_remote = None
+ def __init__(self, host, port, username, proxy_remote = None):
+ self.host = host
+ self.port = port
+ self.username = username
+ self.proxy_remote = proxy_remote
+ def __str__(self):
+ return '{user}@{host}:{port}{proxy}'.format(
+ user = self.username,
+ host = self.host,
+ port = self.port,
+ proxy = '@@{%s}' % str(self.proxy_remote) if self.proxy_remote else '')