1
0
mirror of https://pagure.io/fedora-qa/os-autoinst-distri-fedora.git synced 2024-11-29 00:53:09 +00:00

Add an ugly workaround for FEDORA-2023-f6afa6f9e5 rebase issue

There's a weird issue with the rpmostree_rebase test for this
update:
https://bodhi.fedoraproject.org/updates/FEDORA-2023-f6afa6f9e5#comment-2919613
it doesn't reproduce locally (I can type fine after doing the
same things the test does up to the rollback) and I can't think
of any possible cause, and I don't want to hold the update up.
So we're just gonna work around it and hope this doesn't start
happening to all F38 update tests after this goes stable. If it
does, we'll have to do the workaround for all of them.

The workaround is just to rollback and reboot 'blindly', instead
of checking the rollback command works. The drawback is that if
the rollback command fails we'll wait 7.5 minutes before giving
up on it, and it'll be a bit less clear exactly what happened.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
This commit is contained in:
Adam Williamson 2023-03-02 10:16:52 -08:00
parent a828ff5d91
commit eadf23a516

View File

@ -50,10 +50,19 @@ sub run {
validate_script_output "rpm-ostree status -b", sub { m/$target/ }, 300; validate_script_output "rpm-ostree status -b", sub { m/$target/ }, 300;
# rollback and reboot # rollback and reboot
validate_script_output "rpm-ostree rollback", sub { m/systemctl reboot/ }, 300; if (get_var("ADVISORY") eq "FEDORA-2023-f6afa6f9e5") {
script_run "systemctl reboot", 0; # FIXME: workaround for a very odd phenomenon with this update
# https://bodhi.fedoraproject.org/updates/FEDORA-2023-f6afa6f9e5#comment-2919613
boot_to_login_screen; # if that keeps happening after the update is stable we will
# have to do this for all affected releases
script_run "rpm-ostree rollback && systemctl reboot", 0;
boot_to_login_screen(timeout => 450);
}
else {
validate_script_output "rpm-ostree rollback", sub { m/systemctl reboot/ }, 300;
script_run "systemctl reboot", 0;
boot_to_login_screen;
}
$self->root_console(tty => 3); $self->root_console(tty => 3);
# check to make sure rollback successful # check to make sure rollback successful