updated utils.check_cmd to accept the same parameters as other commands and be leveraged for node cmds
This commit is contained in:
parent
d326f246a7
commit
fc7a161221
6 changed files with 25 additions and 22 deletions
|
@ -98,7 +98,7 @@ class NodeBase(object):
|
|||
:raises CoreCommandError: when a non-zero exit status occurs
|
||||
"""
|
||||
if self.server is None:
|
||||
return utils.check_cmd(args, env=env, cwd=cwd)
|
||||
return utils.check_cmd(args, env, cwd, wait)
|
||||
else:
|
||||
args = " ".join(args)
|
||||
return distributed.remote_cmd(self.server, args, env, cwd, wait)
|
||||
|
|
|
@ -56,7 +56,7 @@ class DockerClient(object):
|
|||
cmd=cmd
|
||||
))
|
||||
|
||||
def ns_cmd(self, cmd):
|
||||
def ns_cmd(self, cmd, wait):
|
||||
if isinstance(cmd, list):
|
||||
cmd = " ".join(cmd)
|
||||
args = "nsenter -t {pid} -u -i -p -n {cmd}".format(
|
||||
|
@ -64,7 +64,7 @@ class DockerClient(object):
|
|||
cmd=cmd
|
||||
)
|
||||
logging.info("ns cmd: %s", args)
|
||||
return utils.check_cmd(args)
|
||||
return utils.check_cmd(args, wait=wait)
|
||||
|
||||
def get_pid(self):
|
||||
args = "docker inspect -f '{{{{.State.Pid}}}}' {name}".format(name=self.name)
|
||||
|
@ -147,7 +147,7 @@ class DockerNode(CoreNode):
|
|||
logging.debug("node down, not running network command: %s", args)
|
||||
return ""
|
||||
|
||||
return self.client.ns_cmd(args)
|
||||
return self.client.ns_cmd(args, wait)
|
||||
|
||||
def termcmdstring(self, sh="/bin/sh"):
|
||||
"""
|
||||
|
|
|
@ -61,7 +61,7 @@ class CoreInterface(object):
|
|||
:raises CoreCommandError: when a non-zero exit status occurs
|
||||
"""
|
||||
if self.server is None:
|
||||
return utils.check_cmd(args, env=env, cwd=cwd)
|
||||
return utils.check_cmd(args, env, cwd, wait)
|
||||
else:
|
||||
args = " ".join(args)
|
||||
return distributed.remote_cmd(self.server, args, env, cwd, wait)
|
||||
|
|
|
@ -46,12 +46,12 @@ class LxdClient(object):
|
|||
def _cmd_args(self, cmd):
|
||||
return "lxc exec -nT {name} -- {cmd}".format(name=self.name, cmd=cmd)
|
||||
|
||||
def check_cmd(self, cmd):
|
||||
def check_cmd(self, cmd, wait):
|
||||
if isinstance(cmd, list):
|
||||
cmd = " ".join(cmd)
|
||||
args = self._cmd_args(cmd)
|
||||
logging.info("lxc cmd output: %s", args)
|
||||
return utils.check_cmd(args)
|
||||
return utils.check_cmd(args, wait=wait)
|
||||
|
||||
def _ns_args(self, cmd):
|
||||
return "nsenter -t {pid} -m -u -i -p -n {cmd}".format(pid=self.pid, cmd=cmd)
|
||||
|
@ -144,7 +144,7 @@ class LxcNode(CoreNode):
|
|||
if not self.up:
|
||||
logging.debug("node down, not running network command: %s", args)
|
||||
return ""
|
||||
return self.client.check_cmd(args)
|
||||
return self.client.check_cmd(args, wait)
|
||||
|
||||
def termcmdstring(self, sh="/bin/sh"):
|
||||
"""
|
||||
|
|
|
@ -322,7 +322,7 @@ class CoreNetwork(CoreNetworkBase):
|
|||
:raises CoreCommandError: when a non-zero exit status occurs
|
||||
"""
|
||||
logging.info("network node(%s) cmd", self.name)
|
||||
output = utils.check_cmd(args, env=env, cwd=cwd)
|
||||
output = utils.check_cmd(args, env, cwd, wait)
|
||||
|
||||
args = " ".join(args)
|
||||
for server in self.session.servers:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue