Message ID | 20200205212920.467-5-robert.foley@linaro.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | tests/vm: Add support for aarch64 VMs | expand |
Robert Foley <robert.foley@linaro.org> writes: > Allow wait_ssh to wait for root user to be ready. > This solves the issue where we perform a wait_ssh() > successfully, but the root user is not yet ready > to be logged in. > > Signed-off-by: Robert Foley <robert.foley@linaro.org> > --- > tests/vm/basevm.py | 8 +++++--- > 1 file changed, 5 insertions(+), 3 deletions(-) > > diff --git a/tests/vm/basevm.py b/tests/vm/basevm.py > index 4de358ae22..a29099f6f1 100755 > --- a/tests/vm/basevm.py > +++ b/tests/vm/basevm.py > @@ -314,7 +314,7 @@ class BaseVM(object): > def print_step(self, text): > sys.stderr.write("### %s ...\n" % text) > > - def wait_ssh(self, seconds=300): > + def wait_ssh(self, wait_root=False, seconds=300): > # Allow more time for VM to boot under TCG. > if not kvm_available(self.arch): > seconds *= self.tcg_ssh_timeout_multiplier > @@ -322,7 +322,10 @@ class BaseVM(object): > endtime = starttime + datetime.timedelta(seconds=seconds) > guest_up = False > while datetime.datetime.now() < endtime: > - if self.ssh("exit 0") == 0: > + if wait_root and self.ssh_root("exit 0") == 0: > + guest_up = True > + break > + elif self.ssh("exit 0") == 0: > guest_up = True > break > seconds = (endtime - datetime.datetime.now()).total_seconds() > @@ -333,7 +336,6 @@ class BaseVM(object): > > def shutdown(self): > self._guest.shutdown() > - Stray line deletion. Otherwise: Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
diff --git a/tests/vm/basevm.py b/tests/vm/basevm.py index 4de358ae22..a29099f6f1 100755 --- a/tests/vm/basevm.py +++ b/tests/vm/basevm.py @@ -314,7 +314,7 @@ class BaseVM(object): def print_step(self, text): sys.stderr.write("### %s ...\n" % text) - def wait_ssh(self, seconds=300): + def wait_ssh(self, wait_root=False, seconds=300): # Allow more time for VM to boot under TCG. if not kvm_available(self.arch): seconds *= self.tcg_ssh_timeout_multiplier @@ -322,7 +322,10 @@ class BaseVM(object): endtime = starttime + datetime.timedelta(seconds=seconds) guest_up = False while datetime.datetime.now() < endtime: - if self.ssh("exit 0") == 0: + if wait_root and self.ssh_root("exit 0") == 0: + guest_up = True + break + elif self.ssh("exit 0") == 0: guest_up = True break seconds = (endtime - datetime.datetime.now()).total_seconds() @@ -333,7 +336,6 @@ class BaseVM(object): def shutdown(self): self._guest.shutdown() - def wait(self): self._guest.wait()
Allow wait_ssh to wait for root user to be ready. This solves the issue where we perform a wait_ssh() successfully, but the root user is not yet ready to be logged in. Signed-off-by: Robert Foley <robert.foley@linaro.org> --- tests/vm/basevm.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-)