1
0
mirror of https://pagure.io/fedora-qa/os-autoinst-distri-fedora.git synced 2024-11-19 12:43:08 +00:00
os-autoinst-distri-fedora/tests/_console_shutdown.pm
Adam Williamson 54f69463b0 Use NUMDISKS=2 (or higher) on all update flavors
We stopped doing this on Server because it caused problems with
tests that use a disk image uploaded by another test, e.g. the
cockpit tests - they use the `/etc/fstab` from the disk image
the parent test uploaded, which says to mount the second disk as
/mnt/update_repo, but since this is a new test it has a fresh,
empty second disk with no filesystems to mount. This tries to
fix that by making _console_shutdown.pm edit that line back out
of /etc/fstab, so we can set NUMDISKS=2 again (also on the ostree
flavor, which had a similar problem with the overlay and rebase
tests using a disk image uploaded by the install test).

We need to fix this because FEDORA-2024-9b9da603e1 is so big
it causes the tests that don't use a scratch disk to run out of
disk space.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-28 15:26:01 -08:00

36 lines
1.3 KiB
Perl

use base "installedtest";
use strict;
use testapi;
sub run {
my $self = shift;
# this shutdown code is only to make sure the guest disk is clean
# before uploading an image of it, we're really not "testing"
# shutdown here. So to keep things simple and reliable, we do not
# use the desktops' graphical shutdown methods, we just go to a
# console and run 'poweroff'. We can write separate tests for
# properly testing shutdown/reboot/log out from desktops.
$self->root_console(tty => 4);
# disable the hidden grub menu on Workstation, so post-install
# tests that need to edit boot params will see it. Don't use
# assert_script_run as this will fail when it's not set
script_run("grub2-editenv - unset menu_auto_hide", 0);
# drop the update_repo mount definition on update tests, as
# child tests won't have the same disk image attached as HDD_2
# so won't have this there to mount
script_run("sed -i '/update_repo/d' /etc/fstab") if (get_var("ADVISORY_OR_TASK"));
script_run("poweroff", 0);
assert_shutdown 180;
}
# this is not 'fatal' or 'important' as all wiki test cases are passed
# even if shutdown fails. we should have a separate test for shutdown/
# logout/reboot stuff, might need some refactoring.
sub test_flags {
return {'norollback' => 1, 'ignore_failure' => 1};
}
1;
# vim: set sw=4 et: