]> git-server-git.apps.pok.os.sepia.ceph.com Git - remoto.git/commitdiff
connection allow custom ssh_options
authorAlfredo Deza <alfredo@deza.pe>
Wed, 12 Dec 2018 19:30:08 +0000 (14:30 -0500)
committerAlfredo Deza <alfredo@deza.pe>
Wed, 12 Dec 2018 19:30:08 +0000 (14:30 -0500)
Signed-off-by: Alfredo Deza <alfredo@deza.pe>
remoto/connection.py

index ed5a7ef34523eb8c6f0a2b7902fd536a39a2bca4..07d044923aeab0d7661a651d89fd8fbc65c6d58d 100644 (file)
@@ -10,9 +10,10 @@ import execnet
 class Connection(object):
 
     def __init__(self, hostname, logger=None, sudo=False, threads=1, eager=True,
-                 detect_sudo=False, interpreter=None):
+                 detect_sudo=False, interpreter=None, ssh_options=None):
         self.sudo = sudo
         self.hostname = hostname
+        self.ssh_options = ssh_options
         self.logger = logger or FakeRemoteLogger()
         self.remote_module = None
         self.channel = None
@@ -74,7 +75,11 @@ class Connection(object):
         elif self.sudo:
             interpreter = 'sudo ' + interpreter
         if _needs_ssh(hostname):
-            return 'ssh=%s//python=%s' % (hostname, interpreter)
+            if self.ssh_options:
+                return 'ssh=%s %s//python=%s' % (
+                        self.ssh_options, hostname, interpreter)
+            else:
+                return 'ssh=%s//python=%s' % (hostname, interpreter)
         return 'popen//python=%s' % interpreter
 
     def __enter__(self):