Commit Graph

3012 Commits

Author SHA1 Message Date
Adam Williamson 9cf3105168 Try a longer timeout for the rpm-ostree cancels in overlay
We seem to be getting quite a lot of failures in update tests
where this times out. Let's try a longer timeout.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-17 11:48:01 -08:00
Adam Williamson 4dd94df3bc get setup_repos.py from main branch not concdl now it's merged
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-11 15:38:10 -08:00
Adam Williamson 5f702b0be8 Run update repo setup steps from a serial console
This is a surprisingly large change as we want to go back to
the console we were previously on after doing it. To do that we
need to know what console we were on, and to know *that*, we need
to port everything that currently uses (ctrl-)alt-fX to switch
consoles to use select_console instead.

This is primarily intended to make running setup_repos.py faster
when it has to download a lot of packages (as typing in hundreds
of package names is quite slow). But it actually makes the whole
thing faster, even when only downloading one or two packages.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-11 12:09:59 -08:00
Adam Williamson d445a80016 update testing: use a concurrent script to download packages
This uses a Python script which implements concurrent downloads
(via asyncio) to download workaround and update packages and
configure the repos. This should speed up the process for large
multi-package updates.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-11 11:31:40 -08:00
Adam Williamson 8251756331 Revert to having tests, not the scheduler, download packages (#108)
This effectively reverts 97618193 - but had to be done manually
and adjusted to maintain support for testing side tags and for
testing multiple tasks, since those features were added since
the update ISO change.

The 'scheduler injects ISOs of packages into the tests' approach
was intended to speed things up, especially for large updates,
and it did, but it had a few drawbacks. It means restarting
older tests from the web UI doesn't work as the ISOs get garbage
collected (you have to re-schedule in this case). And it has the
rather large problem that you can now only schedule tests from
the openQA server (or at least a machine with the openQA asset
share mounted), because the package download and ISO creation
just happen wherever the scheduler is running and assume that
the openQA asset share that will be used by the tests is at
/var/lib/openqa/share in that filesystem.

That's too big of a drawback to continue with this approach, IMO,
so this reverts back to the old way of doing things, with a bit
of refactoring to clean up the flow a little, and with support
for testing side tags and multiple tasks maintained.

As a follow-up I'm going to see if I can replace
_download_packages with a much more efficient downloader script
to mitigate the time this process takes on each test, especially
for large updates.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-11 11:31:40 -08:00
Adam Williamson 6654e522ac app start/stop tests: use normal flags for GNOME Terminal test
This test had special flags because it used to be run first and
did the prep steps for the other tests. Now the aaa_setup test
does that job, so there's no reason for this test to have these
flags any more, and somehow they seem to be breaking the test on
Rawhide. Let's give it the same flag as all the other normal
tests.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-10 12:43:45 -08:00
Adam Williamson 33b9df20d3 Update several needles for GNOME 46
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-10 09:30:06 -08:00
Adam Williamson 89382a3b71 Drop a stray dbusviewer needle
We removed the test a while back, as the app is not in a default
KDE install any more.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-09 17:53:12 -08:00
Adam Williamson abc5e7c679 Plasma notifications: drop the Akonadi migration note check
Per the needle cleanup, we do not seem to have seen it for some
time.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-09 17:52:15 -08:00
Adam Williamson 6f5b10dbe6 Drop workaround for RHBZ #2170544
The change was reverted, and per the needle cleanup, we have not
seen this path for some time.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-09 17:50:24 -08:00
Adam Williamson 45c7e7a63a disks: drop a workaround we did not hit for a long time
The issue is not marked as fixed, but per the needle cleanup we
have not hit this workaround condition for a long time. I checked
past failures and it doesn't look like we're still hitting the
problem but the needle stopped matching, or anything.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-09 17:48:28 -08:00
Adam Williamson 99b3ef8f03 kontakt: drop the check for 'enable_unified_mailboxes'
Per the needle cleanup, it hasn't been seen for some time. The
test is failing ATM but even the last time it passed -
https://openqa.fedoraproject.org/tests/2311371#step/kontakt/3 -
we did not see this.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-09 17:44:47 -08:00
Adam Williamson 247e8dd822 gnome-text-editor: drop setting of English language
The bug this was meant to fix hasn't happened for months. Back
in Fedora-Rawhide-20230629.n.0 we were seeing every line in the
poem marked as a spelling error until we did this, but that's
not happening any more, we don't need this.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-09 17:41:27 -08:00
Adam Williamson 5e3f39209d Workaround KDE kickstart referencing new comps group
This breaks things until a compose has happened and comps data
with the new group in it is actually out there in the repos. So
we need to hack it back out again till a compose goes through.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-04 15:01:15 -08:00
Adam Williamson 50b4e70a1f Old needle cleanup 2024-01-02
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-03 17:48:30 -08:00
Adam Williamson f7a337db9e Fix the retry logic in fifloader.py
subprocess.run raises an exception by default if the command
fails, you don't have to look for the return code.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-03 17:47:48 -08:00
Adam Williamson 04e9f84338 decrypt: instead of waiting, let's try slow typing
Seems the bug might just be that plymouth got more sensitive to
fast typing, so instead of waiting, let's try slow typing.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-03 17:40:31 -08:00
Adam Williamson f2dcfed498 Also settle during the setup stage for Maps
This has similarly been failing quite a lot lately, let's see if
a sleep helps here.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-03 15:31:56 -08:00
Adam Williamson 6e95581865 Calculator: delay before snapshotting
In some tests on staging this seems to help with the 'clicks
don't work in later test steps' problem we're seeing a lot.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-03 15:12:44 -08:00
Adam Williamson 32a7798037 Make Silverblue install target disk bigger
It's defaulting to 10Gi, which definitely has caused *some*
issues (the flatpak test fails because there isn't enough disk
space). I'm hoping this will turn out to explain why SB tests
have been generally so unreliable lately.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-03 15:03:24 -08:00
Adam Williamson ce0a04b40a Wait and re-assert before entering decryption passphrase (#2256682)
New Plymouth seems to have a bug where it shows the decryption
prompt briefly then shows a spinner and refreshes it, throwing
away any already-typed input. This is breaking our tests quite
often (any time os-autoinst is "lucky" enough to spot the first
brief appearance of the prompt and start typing). To work around
it, after we first see the prompt, wait for the screen to settle
and re-assert the needle before typing. This should reliably
wait out the refresh cycle.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-03 14:13:30 -08:00
Adam Williamson 7b453a493c autocloud: blocking off more atomic tests on non-atomic images
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-02 14:06:35 -08:00
Adam Williamson a4e63df10f New weather icon: snow!
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-02 12:04:47 -08:00
Adam Williamson ec87c19d65 Add a couple more KDE printing check sentence variants
Why this rendering changes so much I do not know.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-02 12:04:04 -08:00
Adam Williamson 32621bd042 Drop KDE live build workaround we no longer need
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-12-23 12:10:41 -08:00
Adam Williamson 88b3213af4 autocloud: only run atomic test on canned (==atomic) installs
It seems Python 3.12.1 changed unittests' behaviour so that all
tests being skipped is now a fail not a pass. That breaks this
test because TestAtomic01Status only does anything if this is
an atomic system. So, let's just skip that test entirely if we
aren't one. As things stand this means the test will never run,
because we only test on Cloud_Base which is not atomic.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-12-23 12:04:50 -08:00
Adam Williamson 893052197d Workaround needed comps change for KF6 rebuild
https://pagure.io/fedora-comps/pull-request/920 is a required
comps change now
https://bodhi.fedoraproject.org/updates/FEDORA-2023-ad16578136
landed in stable, but it won't be in the public comps data till
after the next compose. This reproduces the same effect on the
fly in the KDE kickstart when doing the KDE live image build
test, so it will pass.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-12-15 13:20:34 -08:00
Adam Williamson 107715a3de Update KDE printing needles for Plasma 6 changes (I guess)
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-12-06 11:41:34 -08:00
Adam Williamson 3e8178fa51 Add a variant '7' button calculator needle
I *think* it gets shaded slightly when we have to click it twice
in a row, or something.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-12-06 11:40:45 -08:00
Adam Williamson ee661e1812 Update KDE user confirm needles for latest Plasma
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-12-05 17:59:52 -08:00
Adam Williamson 3f27e90117 Update KDE no notifications needle again
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-12-05 17:23:10 -08:00
Adam Williamson c05dfdd120 Fix KDE background solidification for change to sddm-breeze
There used to be a theme.conf.user file, there isn't any more.
I think this should work both before and after.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-12-05 17:17:42 -08:00
Adam Williamson fc7affc473 limpress: use esc not alt-f4 to close template chooser
See https://bugzilla.redhat.com/show_bug.cgi?id=2252806 for why,
we're working around that.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-12-04 11:18:12 -08:00
Adam Williamson 2c476fded6 Add a retry loop to fifloader
load_templates often fails for no good reason - see
https://progress.opensuse.org/issues/121378 . This makes
fifloader retry 20 times on failure to mitigate the issue.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-12-04 10:18:47 -08:00
Adam Williamson 309ccc45ee Revert "Bump RETRY for updates-kde to 2 while we have oom kill issues"
This reverts commit 1bea573fec. We
don't have OOM kill issues any more.
2023-12-04 10:07:24 -08:00
Adam Williamson d52bed5c93 Update KDE Vault needles again for Plasma 6
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-12-04 09:51:53 -08:00
Adam Williamson 85b7707b4a Update the KDE getting started needle again
This lil guy seems very subject to match changes...

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-12-04 09:50:31 -08:00
Adam Williamson 171230ab1a Try hiding cursor in middle right of screen on desktops
os-autoinst is set so that if you once manually set the cursor
somewhere, all subsequent calls to `assert_and_click` will return
the cursor to the last manually-set position (if you never set
the cursor anywhere manually, it uses the `mouse_hide` location).
The mouse_hide location is no good for modern desktops as they
use hot corners in various ways, so for the desktop tests, early
in login, we set the mouse to 300/800, which we hope is a kind
of neutral location that doesn't interfere with matches of the
desktop_background needles (which I usually put towards the
right of the screen).

Unfortunately, KDE can show fairly big previews of active windows
down there, and hovering over one causes that window to be
displayed and all others to be hidden. Which rather breaks the
desktop browser test, when we have the Welcome Center popping up
on boot.

We already moved the mouse set point from 300/200 a few years
back because of a *different* awkward interaction with the browser
test, so we can't go back there. Let's try 1023/384 instead -
that's all the way on the right hand side of the screen, but half
way down, not in either corner. I really hope this doesn't cause
problems for any tests cos I don't know where else to stick the
damn thing if this doesn't work.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-12-04 09:15:17 -08:00
Adam Williamson b2928ff399 KDE app start/stop test updates for Plasma 6
Several needle updates and a tweak to the text we type to launch
kinfocenter (just "info" now launches something else).

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-11-30 18:05:37 -08:00
Adam Williamson af73a24f50 Drop dbusviewer from KDE apps start/stop test
khotkeys was removed from Plasma 6, and qdbusviewer was only on
the live image because khotkeys recommended it, so now it's gone.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-11-30 12:12:09 -08:00
Adam Williamson 683234d7a5 Simplify package set selection in anaconda
tab will both reach the environment selection list and then go
through it, so we don't need to start out with tab and then
switch to down. And since all we need to do is hit one key until
a needle matches, let's use the handy function os-autoinst
provides for doing this...

This should fix it on current Rawhide (where it only takes one
tab, or zero tabs - not sure which - to reach the list).

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-11-29 16:20:13 -08:00
Adam Williamson 4e62eb8ec5 Remove the anaconda_help test
Help support has been removed from anaconda:
https://github.com/rhinstaller/anaconda/pull/5335
so we no longer ought to test it.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-11-29 12:11:00 -08:00
Adam Williamson d638d8b86e check-needles: add assert_and_dclick to matchfuncs
...since we're using it for something now (the KDE color select
widget).

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-11-29 12:11:00 -08:00
Adam Williamson 838d65f86c solidify_wallpaper: handle KDE no longer having a handy 'black'
Plasma 6's color chooser seems to have dropped the nice "basic
colors", so choosing black got harder. Let's try using the HTML
color input box thingy instead, and typing #000000, the HTML
color code for black.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-11-29 11:51:17 -08:00
Adam Williamson 0245b36cd4 Update deskset_plain_color for Plasma 6
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-11-29 11:51:00 -08:00
Adam Williamson c0e293755b Update various KDE needles for Plasma 6
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-11-27 11:19:14 -08:00
Adam Williamson 13404c6aaf loupe: don't pass args to download_testdata
You can see what these args are trying to do, but the function
does not currently work that way. I think running it without
args should get what the test wants. If Lukas wants to refine
download_testdata so you can specify the payload and where to
extract it, he can do that, then put this back...

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-11-27 10:53:31 -08:00
Adam Williamson 1ecbd28f82 desktop_login: get rid of KDE welcome tour
The KDE welcome tour is getting in the way of the desktop login
test. Try getting rid of it after logging in.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-11-27 09:55:34 -08:00
Adam Williamson 461e211618 Drop use of PXEBOOT, rely on default boot order
Per https://progress.opensuse.org/issues/151258 , PXEBOOT=once
doesn't work right in current os-autoinst. Now I look at it,
PXEBOOT is just pretty ropey in general; on UEFI and aarch64 it
doesn't actually do anything at all, we're actually just relying
on the default boot order there.

Since it doesn't seem like there's a practical way to make
PXEBOOT=once work as intended on all platforms, let's just drop
use of it and make it clear that we rely on the default boot
order: we hope that on first boot we'll get a PXE boot since no
local media are bootable, then on second boot we'll get a local
disk boot.

We set up a new IS_PXE variable to cue the couple of places where
the test logic needs to be different.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-11-21 16:23:25 -08:00
Adam Williamson 1343e1e7c0 Revert "Set a high RETRY value for desktop_printing"
This reverts commit 73f860ecb9. The
mesa issue has been resolved, so we can drop this now.
2023-11-20 23:03:38 -08:00