explicitly check for DNF "system is not ready for upgrade"

Summary:
Instead of sitting there waiting 6000 seconds twice, when DNF
explicitly tells us it failed, just die.

This is why we haven't been getting proper compose check reports
lately; the upgrade tests are failing, waiting 6000 seconds to
time out, then being cloned and tried again, waiting another 6000
seconds. This is just barely going beyond check-compose's 8 hour
wait limit, as it's some time before the upgrade tests even get
started (they're low in the priority list). We're still going to
have that problem if the tests fail any other way, but this at
least catches that case.

Test Plan:
Run the upgrade tests and see that they fail quicker
(assuming the dependency problems they're dying on aren't fixed).
Maybe also do a 22-23 upgrade test and check it still succeeds
properly.

Reviewers: jskladan, garretraziel

Reviewed By: garretraziel

Subscribers: tflink

Differential Revision: https://phab.qadevel.cloud.fedoraproject.org/D650
This commit is contained in:
Adam Williamson 2015-11-18 11:17:49 -08:00
parent df7a4582d0
commit 3ecef54b51
3 changed files with 17 additions and 0 deletions

16
needles/upgrade_fail.json Normal file
View File

@ -0,0 +1,16 @@
{
"area": [
{
"height": 15,
"type": "match",
"width": 305,
"xpos": 0,
"ypos": 735
}
],
"tags": [
"upgrade_fail",
"ENV-DISTRI-fedora",
"ENV-FLAVOR-server"
]
}

BIN
needles/upgrade_fail.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

View File

@ -23,6 +23,7 @@ sub run {
upload_logs "/var/log/dnf.rpm.log"; upload_logs "/var/log/dnf.rpm.log";
script_run "dnf system-upgrade reboot"; script_run "dnf system-upgrade reboot";
die "DNF reported failure" if (check_screen "upgrade_fail");
# now offline upgrading starts. user doesn't have to do anything, just wait untill # now offline upgrading starts. user doesn't have to do anything, just wait untill
# system reboots and login screen is shown # system reboots and login screen is shown