On Thu, Aug 11, 2022 at 7:43 AM Alex Bennée <alex.bennee@linaro.org> wrote:
This is really a limitation of the underlying console code which
doesn't allow us to detect the login: and following "#" prompts
because it reads input line wise. By adding a small delay we ensure
that the login prompt has appeared so we don't accidentally spaff the
shell commands to a confused getty in the guest.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Cc: Cédric Le Goater <clg@kaod.org>
Cc: John Snow <jsnow@redhat.com>
---
tests/avocado/machine_aspeed.py | 2 ++
1 file changed, 2 insertions(+)
diff --git a/tests/avocado/machine_aspeed.py b/tests/avocado/machine_aspeed.py
index c54da0fd8f..65d38f4efa 100644
--- a/tests/avocado/machine_aspeed.py
+++ b/tests/avocado/machine_aspeed.py
@@ -101,7 +101,9 @@ def do_test_arm_aspeed_buidroot_start(self, image, cpu_id):
self.wait_for_console_pattern('Starting kernel ...')
self.wait_for_console_pattern('Booting Linux on physical CPU ' +
cpu_id)
self.wait_for_console_pattern('lease of 10.0.2.15')
+ # the line before login:
self.wait_for_console_pattern('Aspeed EVB')
+ time.sleep(0.1)
exec_command(self, 'root')
time.sleep(0.1)
--
2.30.2
Augh. Sorry my hunch was wrong. I wasn't aware of this problem.
Is ... this 0.1 second sleep really sufficient? I guess it's better
than not having it, and I can't reasonably ask for something more
thorough.