From 7df2bfb4f3c19eaf555a4b42793acb509b0141dd Mon Sep 17 00:00:00 2001 From: Adam Williamson Date: Sat, 18 Aug 2018 16:50:23 -0400 Subject: [PATCH] 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 --- lib/utils.pm | 46 +++++++++++++++--- needles/console/grub-error-page-20180818.json | 17 +++++++ needles/console/grub-error-page-20180818.png | Bin 0 -> 6701 bytes 3 files changed, 56 insertions(+), 7 deletions(-) create mode 100644 needles/console/grub-error-page-20180818.json create mode 100644 needles/console/grub-error-page-20180818.png diff --git a/lib/utils.pm b/lib/utils.pm index ad693538..0a7cd1ae 100644 --- a/lib/utils.pm +++ b/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 diff --git a/needles/console/grub-error-page-20180818.json b/needles/console/grub-error-page-20180818.json new file mode 100644 index 00000000..46a47926 --- /dev/null +++ b/needles/console/grub-error-page-20180818.json @@ -0,0 +1,17 @@ +{ + "properties": [ + "workaround" + ], + "tags": [ + "grub_error_page" + ], + "area": [ + { + "xpos": 10, + "ypos": 387, + "width": 51, + "height": 10, + "type": "match" + } + ] +} \ No newline at end of file diff --git a/needles/console/grub-error-page-20180818.png b/needles/console/grub-error-page-20180818.png new file mode 100644 index 0000000000000000000000000000000000000000..294d2dbe0a5105dec1cfde7057e4d6ba716b39c6 GIT binary patch literal 6701 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 literal 0 HcmV?d00001