From 7c75d1b5fce7037827669b01ff6d6e7fb5a7d76e Mon Sep 17 00:00:00 2001 From: Ivo Jimenez Date: Wed, 2 Sep 2015 11:52:13 -0700 Subject: [PATCH] Adds option to have per-remote port --- teuthology/orchestra/remote.py | 4 ++-- teuthology/task/internal.py | 8 +++++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/teuthology/orchestra/remote.py b/teuthology/orchestra/remote.py index af6e1ee979..fb215df8b1 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, ssh_port=22): + host_key=None, keep_alive=True, port=22): self.name = name if '@' in name: (self.user, hostname) = name.split('@') @@ -52,7 +52,7 @@ class Remote(object): self.keep_alive = keep_alive self.console = console self.ssh = ssh - self.ssh_port = ssh_port + self.ssh_port = port def connect(self, timeout=None): args = dict(user_at_host=self.name, host_key=self._host_key, diff --git a/teuthology/task/internal.py b/teuthology/task/internal.py index 6bdc77dedd..1981810be3 100644 --- a/teuthology/task/internal.py +++ b/teuthology/task/internal.py @@ -296,18 +296,20 @@ 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(): + port = 22 + if ':' in t: + port = int(t.split(':')[1]) + t = t.split(':')[0] t = misc.canonicalize_hostname(t) try: if ctx.config['sshkeys'] == 'ignore': key = None except (AttributeError, KeyError): pass - rem = remote.Remote(name=t, host_key=key, - keep_alive=True, ssh_port=ssh_port) + rem = remote.Remote(name=t, host_key=key, keep_alive=True, port=port) remotes.append(rem) ctx.cluster = cluster.Cluster() if 'roles' in ctx.config: -- 2.39.5