From 1a0be5a0ab134b24af9059cd52889c6653d61654 Mon Sep 17 00:00:00 2001 From: Zack Cerza Date: Mon, 10 Feb 2014 17:26:51 -0600 Subject: [PATCH] Tweaks to is_online and reconnect() Signed-off-by: Zack Cerza --- teuthology/orchestra/remote.py | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/teuthology/orchestra/remote.py b/teuthology/orchestra/remote.py index 8df6f221ba7c1..7d353c36416bf 100644 --- a/teuthology/orchestra/remote.py +++ b/teuthology/orchestra/remote.py @@ -48,8 +48,16 @@ class Remote(object): return self.ssh def reconnect(self): + """ + Attempts to re-establish connection. Returns True for success; False + for failure. + """ self.ssh.close() - self.ssh = self.connect() + try: + self.ssh = self.connect() + return self.is_online + except Exception: + return False @property def shortname(self): @@ -67,10 +75,12 @@ class Remote(object): @property def is_online(self): + if self.ssh is None: + return False try: self.run(args="echo online") except Exception: - pass + return False return self.ssh.get_transport().is_active() @property -- 2.39.5