Message ID | 20190520124716.30472-5-kraxel@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | tests/vm: serial console autoinstall, misc fixes. | expand |
On 5/20/19 2:47 PM, Gerd Hoffmann wrote: > Allways ask ssh to run with a pseudo terminal. > Not having a terminal causes problems now and then. > > Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> > Tested-by: Thomas Huth <thuth@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com> > --- > tests/vm/basevm.py | 13 ++++--------- > 1 file changed, 4 insertions(+), 9 deletions(-) > > diff --git a/tests/vm/basevm.py b/tests/vm/basevm.py > index 640f3226929d..878f1a7a32b8 100755 > --- a/tests/vm/basevm.py > +++ b/tests/vm/basevm.py > @@ -106,16 +106,14 @@ class BaseVM(object): > os.rename(fname + ".download", fname) > return fname > > - def _ssh_do(self, user, cmd, check, interactive=False): > - ssh_cmd = ["ssh", "-q", > + def _ssh_do(self, user, cmd, check): > + ssh_cmd = ["ssh", "-q", "-t", > "-o", "StrictHostKeyChecking=no", > "-o", "UserKnownHostsFile=" + os.devnull, > "-o", "ConnectTimeout=1", > "-p", self.ssh_port, "-i", self._ssh_key_file] > for var in self.envvars: > ssh_cmd += ['-o', "SendEnv=%s" % var ] > - if interactive: > - ssh_cmd += ['-t'] > assert not isinstance(cmd, str) > ssh_cmd += ["%s@127.0.0.1" % user] + list(cmd) > logging.debug("ssh_cmd: %s", " ".join(ssh_cmd)) > @@ -127,9 +125,6 @@ class BaseVM(object): > def ssh(self, *cmd): > return self._ssh_do(self.GUEST_USER, cmd, False) > > - def ssh_interactive(self, *cmd): > - return self._ssh_do(self.GUEST_USER, cmd, False, True) > - > def ssh_root(self, *cmd): > return self._ssh_do("root", cmd, False) > > @@ -283,9 +278,9 @@ def main(vmcls): > return 2 > > if args.interactive: > - if vm.ssh_interactive(*cmd) == 0: > + if vm.ssh(*cmd) == 0: > return 0 > - vm.ssh_interactive() > + vm.ssh() > return 3 > else: > if vm.ssh(*cmd) != 0: >
diff --git a/tests/vm/basevm.py b/tests/vm/basevm.py index 640f3226929d..878f1a7a32b8 100755 --- a/tests/vm/basevm.py +++ b/tests/vm/basevm.py @@ -106,16 +106,14 @@ class BaseVM(object): os.rename(fname + ".download", fname) return fname - def _ssh_do(self, user, cmd, check, interactive=False): - ssh_cmd = ["ssh", "-q", + def _ssh_do(self, user, cmd, check): + ssh_cmd = ["ssh", "-q", "-t", "-o", "StrictHostKeyChecking=no", "-o", "UserKnownHostsFile=" + os.devnull, "-o", "ConnectTimeout=1", "-p", self.ssh_port, "-i", self._ssh_key_file] for var in self.envvars: ssh_cmd += ['-o', "SendEnv=%s" % var ] - if interactive: - ssh_cmd += ['-t'] assert not isinstance(cmd, str) ssh_cmd += ["%s@127.0.0.1" % user] + list(cmd) logging.debug("ssh_cmd: %s", " ".join(ssh_cmd)) @@ -127,9 +125,6 @@ class BaseVM(object): def ssh(self, *cmd): return self._ssh_do(self.GUEST_USER, cmd, False) - def ssh_interactive(self, *cmd): - return self._ssh_do(self.GUEST_USER, cmd, False, True) - def ssh_root(self, *cmd): return self._ssh_do("root", cmd, False) @@ -283,9 +278,9 @@ def main(vmcls): return 2 if args.interactive: - if vm.ssh_interactive(*cmd) == 0: + if vm.ssh(*cmd) == 0: return 0 - vm.ssh_interactive() + vm.ssh() return 3 else: if vm.ssh(*cmd) != 0: