From 3c5ed776a4005507160f9fca37fb8434a21bd61d Mon Sep 17 00:00:00 2001 From: Ivo Jimenez Date: Fri, 28 Aug 2015 11:22:20 -0700 Subject: [PATCH] Adds option 'ssh_port' to override the default 22 --- teuthology/orchestra/connection.py | 5 +++-- teuthology/orchestra/remote.py | 5 +++-- teuthology/orchestra/test/test_connection.py | 3 +++ teuthology/task/internal.py | 5 ++++- 4 files changed, 13 insertions(+), 5 deletions(-) diff --git a/teuthology/orchestra/connection.py b/teuthology/orchestra/connection.py index b0c631fee6..755adbc91e 100644 --- a/teuthology/orchestra/connection.py +++ b/teuthology/orchestra/connection.py @@ -38,7 +38,7 @@ def create_key(keytype, key): def connect(user_at_host, host_key=None, keep_alive=False, timeout=60, - _SSHClient=None, _create_key=None): + _SSHClient=None, _create_key=None, port=22): """ ssh connection routine. @@ -74,7 +74,8 @@ def connect(user_at_host, host_key=None, keep_alive=False, timeout=60, connect_args = dict( hostname=host, username=user, - timeout=timeout + timeout=timeout, + port=port ) ssh_config_path = os.path.expanduser("~/.ssh/config") diff --git a/teuthology/orchestra/remote.py b/teuthology/orchestra/remote.py index f39cdf7ca2..af6e1ee979 100644 --- a/teuthology/orchestra/remote.py +++ b/teuthology/orchestra/remote.py @@ -35,7 +35,7 @@ class Remote(object): _runner = staticmethod(run.run) def __init__(self, name, ssh=None, shortname=None, console=None, - host_key=None, keep_alive=True): + host_key=None, keep_alive=True, ssh_port=22): self.name = name if '@' in name: (self.user, hostname) = name.split('@') @@ -52,10 +52,11 @@ class Remote(object): self.keep_alive = keep_alive self.console = console self.ssh = ssh + self.ssh_port = ssh_port def connect(self, timeout=None): args = dict(user_at_host=self.name, host_key=self._host_key, - keep_alive=self.keep_alive) + keep_alive=self.keep_alive,port=self.ssh_port) if timeout: args['timeout'] = timeout diff --git a/teuthology/orchestra/test/test_connection.py b/teuthology/orchestra/test/test_connection.py index ef13c1edff..bd8aeae954 100644 --- a/teuthology/orchestra/test/test_connection.py +++ b/teuthology/orchestra/test/test_connection.py @@ -40,6 +40,7 @@ class TestConnection(object): hostname='orchestra.test.newdream.net.invalid', username='jdoe', timeout=60, + port=22 ) transport = ssh.expects('get_transport').with_args().returns_fake() transport.remember_order() @@ -62,6 +63,7 @@ class TestConnection(object): hostname='orchestra.test.newdream.net.invalid', username='jdoe', timeout=60, + port=22 ) transport = ssh.expects('get_transport').with_args().returns_fake() transport.remember_order() @@ -90,6 +92,7 @@ class TestConnection(object): hostname='orchestra.test.newdream.net.invalid', username='jdoe', timeout=60, + port=22 ) transport = ssh.expects('get_transport').with_args().returns_fake() transport.remember_order() diff --git a/teuthology/task/internal.py b/teuthology/task/internal.py index ef7023e409..6bdc77dedd 100644 --- a/teuthology/task/internal.py +++ b/teuthology/task/internal.py @@ -296,6 +296,7 @@ def add_remotes(ctx, config): """ remotes = [] machs = [] + ssh_port = ctx.config.get('ssh_port', 22) for name in ctx.config['targets'].iterkeys(): machs.append(name) for t, key in ctx.config['targets'].iteritems(): @@ -305,7 +306,8 @@ def add_remotes(ctx, config): key = None except (AttributeError, KeyError): pass - rem = remote.Remote(name=t, host_key=key, keep_alive=True) + rem = remote.Remote(name=t, host_key=key, + keep_alive=True, ssh_port=ssh_port) remotes.append(rem) ctx.cluster = cluster.Cluster() if 'roles' in ctx.config: @@ -361,6 +363,7 @@ def check_ceph_data(ctx, config): Check for old /var/lib/ceph directories and detect staleness. """ log.info('Checking for old /var/lib/ceph...') + processes = ctx.cluster.run( args=['test', '!', '-e', '/var/lib/ceph'], wait=False, -- 2.39.5