mirror of
https://pagure.io/fedora-qa/os-autoinst-distri-fedora.git
synced 2025-03-03 19:14:32 +00:00
Tweak desktop_update_graphical download/apply handling for fwupd
Now fwupd is showing us dbx updates, it seems we get *both* a "Restart & Update..." button *and* a "Download" button at the same time. If we click Restart & Update without clicking Download first, package updates aren't applied. So, tweak this logic yet again so that it 'breaks the tie' in the way we want (if both buttons are present, click the download one, take download out of the tags, and go to the next loop iteration). Hopefully this solves the problem without breaking any other paths. Signed-off-by: Adam Williamson <awilliam@redhat.com>
This commit is contained in:
parent
f473de351c
commit
aaf6018485
@ -0,0 +1,16 @@
|
||||
{
|
||||
"area": [
|
||||
{
|
||||
"width": 71,
|
||||
"ypos": 249,
|
||||
"type": "match",
|
||||
"xpos": 688,
|
||||
"height": 36
|
||||
}
|
||||
],
|
||||
"properties": [],
|
||||
"tags": [
|
||||
"DESKTOP-gnome",
|
||||
"desktop_package_tool_update_download"
|
||||
]
|
||||
}
|
Binary file not shown.
After Width: | Height: | Size: 69 KiB |
23
needles/gnome/gnome_reboot_confirm-variant-20250128.json
Normal file
23
needles/gnome/gnome_reboot_confirm-variant-20250128.json
Normal file
@ -0,0 +1,23 @@
|
||||
{
|
||||
"area": [
|
||||
{
|
||||
"height": 18,
|
||||
"xpos": 578,
|
||||
"type": "match",
|
||||
"width": 53,
|
||||
"ypos": 446
|
||||
},
|
||||
{
|
||||
"xpos": 395,
|
||||
"ypos": 309,
|
||||
"width": 144,
|
||||
"height": 20,
|
||||
"type": "match"
|
||||
}
|
||||
],
|
||||
"properties": [],
|
||||
"tags": [
|
||||
"DESKTOP-gnome",
|
||||
"gnome_reboot_confirm"
|
||||
]
|
||||
}
|
BIN
needles/gnome/gnome_reboot_confirm-variant-20250128.png
Normal file
BIN
needles/gnome/gnome_reboot_confirm-variant-20250128.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 876 KiB |
@ -88,19 +88,22 @@ sub run {
|
||||
# or 'download' then 'apply'
|
||||
for (my $n = 1; $n < 6; $n++) {
|
||||
if (check_screen $tags, 120) {
|
||||
# if we see 'apply', we're done here, quit out of the loop
|
||||
last if (match_has_tag 'desktop_package_tool_update_apply');
|
||||
# if we see 'download', let's hit it, and continue waiting
|
||||
# for apply (only)
|
||||
wait_screen_change { click_lastmatch; };
|
||||
$n -= 1 if ($n > 1);
|
||||
if (get_var("TAG") || get_var("COPR")) {
|
||||
# we might get a 'download unsigned software' prompt
|
||||
# https://gitlab.gnome.org/GNOME/gnome-software/-/issues/2246
|
||||
click_lastmatch if (check_screen "desktop_package_tool_update_download_unsigned", 30);
|
||||
# if we have a download button, we want to hit it, even if
|
||||
# we also have a restart button. then continue waiting for
|
||||
# apply (only)
|
||||
if (check_screen 'desktop_package_tool_update_download') {
|
||||
wait_screen_change { click_lastmatch; };
|
||||
$n -= 1 if ($n > 1);
|
||||
if (get_var("TAG") || get_var("COPR")) {
|
||||
# we might get a 'download unsigned software' prompt
|
||||
# https://gitlab.gnome.org/GNOME/gnome-software/-/issues/2246
|
||||
click_lastmatch if (check_screen "desktop_package_tool_update_download_unsigned", 30);
|
||||
}
|
||||
$tags = ['desktop_package_tool_update_apply'];
|
||||
next;
|
||||
}
|
||||
$tags = ['desktop_package_tool_update_apply'];
|
||||
next;
|
||||
# if we *only* saw apply, we're done, break out
|
||||
last;
|
||||
}
|
||||
# move the mouse to stop the screen blanking on idle
|
||||
mouse_set 10, 10;
|
||||
|
Loading…
Reference in New Issue
Block a user