refactor fabric distributed to use a class and update sessions to create and provide these to nodes

This commit is contained in:
Blake Harnden 2019-10-14 15:43:57 -07:00
parent 5f282bb695
commit 6570f22ccf
10 changed files with 153 additions and 133 deletions

View file

@ -4,7 +4,6 @@ import os
from tempfile import NamedTemporaryFile
from core import utils
from core.emulator import distributed
from core.emulator.enumerations import NodeTypes
from core.errors import CoreCommandError
from core.nodes.base import CoreNode
@ -159,7 +158,7 @@ class DockerNode(CoreNode):
return utils.check_cmd(args, wait=wait)
else:
args = self.client.create_ns_cmd(args)
return distributed.remote_cmd(self.server, args, wait=wait)
return self.server.remote_cmd(args, wait=wait)
def termcmdstring(self, sh="/bin/sh"):
"""
@ -211,7 +210,7 @@ class DockerNode(CoreNode):
if directory:
self.node_net_cmd("mkdir -m %o -p %s" % (0o755, directory))
if self.server is not None:
distributed.remote_put(self.server, temp.name, temp.name)
self.server.remote_put(temp.name, temp.name)
self.client.copy_file(temp.name, filename)
self.node_net_cmd("chmod %o %s" % (mode, filename))
if self.server is not None:
@ -242,7 +241,7 @@ class DockerNode(CoreNode):
else:
temp = NamedTemporaryFile(delete=False)
source = temp.name
distributed.remote_put(self.server, source, temp.name)
self.server.remote_put(source, temp.name)
self.client.copy_file(source, filename)
self.node_net_cmd("chmod %o %s" % (mode, filename))