From e5429581fe53d9008e5adc87634b7c29f243d412 Mon Sep 17 00:00:00 2001 From: Sander Vrijders Date: Thu, 26 Oct 2017 15:30:44 +0200 Subject: rumba: Add persistent SSH connections This adds persistent SSH connections to Rumba. A new SSH client will be opened for every node in the experiment, which is closed after all experimentation is done. --- rumba/model.py | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'rumba/model.py') diff --git a/rumba/model.py b/rumba/model.py index 7d7e214..b44da88 100644 --- a/rumba/model.py +++ b/rumba/model.py @@ -198,6 +198,8 @@ class SSHConfig: self.hostname = hostname self.port = port self.proxy_server = proxy_server + self.client = None + self.proxy_client = None def set_username(self, username): self.username = username @@ -809,6 +811,11 @@ class Experiment: self.dump_ssh_info() def swap_out(self): + for node in self.nodes: + if node.ssh_config.client is not None: + node.ssh_config.client.close() + if node.ssh_config.proxy_client is not None: + node.ssh_config.proxy_client.close() # Undo the testbed (testbed-specific) self.testbed.swap_out(self) -- cgit v1.2.3