From ab58692879b37c32965f39d11f26b4cb15b50eaf Mon Sep 17 00:00:00 2001 From: Adam Williamson Date: Wed, 27 Oct 2021 10:49:46 -0700 Subject: [PATCH] Remove Plymouth from Server install_default_upload (#1933378) This is a workaround for https://bugzilla.redhat.com/show_bug.cgi?id=1933378 . Sometimes when booting Server on a tap test without a working network config (no DHCP server, static network not yet configured) we hit a bug where the splash screen does not clear completely, and this causes all the console needle matches to fail. To work around this, we remove plymouth from the installed system after running the install_default_upload test on Server; all affected tests use the image uploaded by that test. We exclude aarch64 because there's a known problem with removing plymouth on that arch (#1940163), plus the bug doesn't actually seem to happen on aarch64 for some reason. Signed-off-by: Adam Williamson --- tests/_do_install_and_reboot.pm | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/tests/_do_install_and_reboot.pm b/tests/_do_install_and_reboot.pm index 92af89df..a60645a2 100644 --- a/tests/_do_install_and_reboot.pm +++ b/tests/_do_install_and_reboot.pm @@ -110,6 +110,13 @@ sub run { push (@actions, 'consoletty0') if (get_var("ARCH") eq "aarch64"); push (@actions, 'abrt') if (get_var("ABRT", '') eq "system"); push (@actions, 'rootpw') if (get_var("INSTALLER_NO_ROOT")); + # FIXME: remove plymouth from Server install_default_upload on + # non-aarch64 to work around RHBZ #1933378 + unless (get_var("ARCH") eq "aarch64") { + if (get_var("FLAVOR") eq "Server-dvd-iso" && get_var("TEST") eq "install_default_upload") { + push (@actions, 'noplymouth'); + } + } # memcheck test doesn't need to reboot at all. Rebooting from GUI # for lives is unreliable. And if we're already doing something # else at a console, we may as well reboot from there too @@ -157,6 +164,9 @@ sub run { my $root_password = get_var("ROOT_PASSWORD") || "weakpassword"; assert_script_run "echo 'root:$root_password' | chpasswd -R $mount"; } + if (grep {$_ eq 'noplymouth'} @actions) { + assert_script_run "chroot $mount dnf -y remove plymouth"; + } type_string "reboot\n" if (grep {$_ eq 'reboot'} @actions); }