mirror of
https://pagure.io/fedora-qa/os-autoinst-distri-fedora.git
synced 2024-12-22 10:23:09 +00:00
Workaround RHBZ#1618928 (hit space till errors go away)
Per Neal Gompa boot will proceed if we just page through the error(?) messages displayed when #1618928 happens, so let's do that to let the tests get further and see what else is broken. Signed-off-by: Adam Williamson <awilliam@redhat.com>
This commit is contained in:
parent
6d0569b836
commit
7df2bfb4f3
46
lib/utils.pm
46
lib/utils.pm
@ -61,7 +61,27 @@ sub boot_to_login_screen {
|
||||
sleep 5;
|
||||
$count -= 1;
|
||||
}
|
||||
assert_screen "login_screen", $args{timeout};
|
||||
assert_screen ["login_screen", "grub_error_page"], $args{timeout};
|
||||
# FIXME grub_error_page is a workaround for #1618928, can probably
|
||||
# be removed when that bug is fixed.
|
||||
my $loopcount = 10;
|
||||
while (match_has_tag "grub_error_page") {
|
||||
my $timeout = $args{timeout};
|
||||
$timeout = 300 if ($timeout > 300);
|
||||
# we cap 300 as the timeouts inside this loop at 300 as it
|
||||
# should always be the right number - if this is a
|
||||
# post-upgrade case or the kickstart install case, that
|
||||
# already finished by now
|
||||
send_key "spc";
|
||||
$loopcount -= 1;
|
||||
if ($loopcount == 0) {
|
||||
# let's not loop forever...
|
||||
assert_screen "login_screen", $timeout;
|
||||
}
|
||||
else {
|
||||
assert_screen ["login_screen", "grub_error_page"], $timeout;
|
||||
}
|
||||
}
|
||||
if (match_has_tag "graphical_login") {
|
||||
wait_still_screen 10, 30;
|
||||
assert_screen "login_screen";
|
||||
@ -210,12 +230,24 @@ sub do_bootloader {
|
||||
);
|
||||
# if not postinstall not UEFI and not ofw, syslinux
|
||||
$args{bootloader} //= ($args{uefi} || $args{postinstall} || $args{ofw}) ? "grub" : "syslinux";
|
||||
if ($args{uefi}) {
|
||||
# we use the firmware-type specific tags because we want to be
|
||||
# sure we actually did a UEFI boot
|
||||
assert_screen "bootloader_uefi", $args{timeout};
|
||||
} else {
|
||||
assert_screen "bootloader_bios", $args{timeout};
|
||||
# we use the firmware-type specific tags because we want to be
|
||||
# sure we actually did a UEFI boot
|
||||
my $boottag = "bootloader_bios";
|
||||
$boottag = "bootloader_uefi" if ($args{uefi});
|
||||
# FIXME grub_error_page is a workaround for #1618928, can probably
|
||||
# be removed when that bug is fixed
|
||||
assert_screen [$boottag, "grub_error_page"], $args{timeout};
|
||||
my $loopcount = 10;
|
||||
while (match_has_tag "grub_error_page") {
|
||||
send_key "spc";
|
||||
$loopcount -= 1;
|
||||
if ($loopcount == 0) {
|
||||
# let's not loop forever
|
||||
assert_screen $boottag;
|
||||
}
|
||||
else {
|
||||
assert_screen [$boottag, "grub_error_page"];
|
||||
}
|
||||
}
|
||||
if ($args{mutex}) {
|
||||
# cancel countdown
|
||||
|
17
needles/console/grub-error-page-20180818.json
Normal file
17
needles/console/grub-error-page-20180818.json
Normal file
@ -0,0 +1,17 @@
|
||||
{
|
||||
"properties": [
|
||||
"workaround"
|
||||
],
|
||||
"tags": [
|
||||
"grub_error_page"
|
||||
],
|
||||
"area": [
|
||||
{
|
||||
"xpos": 10,
|
||||
"ypos": 387,
|
||||
"width": 51,
|
||||
"height": 10,
|
||||
"type": "match"
|
||||
}
|
||||
]
|
||||
}
|
BIN
needles/console/grub-error-page-20180818.png
Normal file
BIN
needles/console/grub-error-page-20180818.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 6.5 KiB |
Loading…
Reference in New Issue
Block a user