Commit Graph

1233 Commits

Author SHA1 Message Date
Lukáš Růžička 27927e2e63 Rewrite the suite to use SSH instead of FTP. 2024-05-30 11:22:01 +02:00
Lukas Ruzicka 3266ac1c0a Create test suite for Desktop Keyring
This adds both the Gnome and the KDE tests to test the
Desktop Keyring. After a discussion with the Brno team,
how this could be tested without the need to rely on
external servers to log into, we set up a local FTP server,
we will log into it and remember the credentials and verify
that the credentials will be stored in the keyring correctly.
2024-05-30 11:22:01 +02:00
Adam Williamson f14200e50d Update cockpit autoupdate test for new dnf5 service
The service cockpit enables is different when it detects dnf5,
since cockpit 317. Let's just make this an F40/F41 boundary
thing, and add the cockpit 317 update as a workaround for F41
until it goes stable.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-05-29 17:43:12 -07:00
Adam Williamson 833204e060 Re-enable FAS homepage check in desktop_browser
Let's hope it's more reliable now.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-05-28 09:14:53 -07:00
Adam Williamson 4ccdaf0236 Add some wait_still_screens to GNOME Software ignore handling
I think the lack here is sometimes causing us to click more
times than we should. Let's do this to try and make sure we
don't click once it worked.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-05-27 12:17:40 -07:00
Adam Williamson 976b37f976 Use workarounds and Rawhide tag repo for update net installs
We're getting failures in the update network install tests today
which seem to be because we're using an image built with systemd
256 to install systemd 255. This is because systemd 256 has been
tagged but isn't in a compose yet, and we use the Rawhide tag
repo when building the installer image but we don't add it as an
additional repo for the install itself.

This is obviously a hole in the process, we should use the extra
repos, where appropriate, all the way through. So this makes us
use both the Rawhide tag repo (when doing a Rawhide install test)
and the workarounds repo (when there are workarounds) for network
install tests.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-05-13 09:38:00 -07:00
Adam Williamson 3b3e00f123 flatpak: proxy the connection to flathub
This is intended to reduce the amount of traffic we generate to
flathub, particularly so we can run this test on updates as well
as composes. We have to set a proxy and trust an SSL cert.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-05-06 15:12:15 -07:00
Adam Williamson a353caeb90 Enable testing of COPRs, fix some issues, enable package checks
This works more or less like testing side tags. We also fix up
some flow problems with this path (that also affect the side tag
case), and enable the package checks on this path - it's not too
hard really, we just need to write the updatepkgs file when we
set up the repo, which we can do with dnf repoquery.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-05-03 14:40:34 -07:00
Adam Williamson 1edde53988 Try and avoid launcher typing issues in more KDE tests
This is the same thing we do for the app_startstop tests in
aaa_setup, applied to a couple of other places we use
menu_launch_type in KDE and it's having trouble.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-05-03 14:22:59 -07:00
Adam Williamson d142d2f4a1 zezere: update for new default ssh key algorithm
ssh-keygen now defaults to ed25519, so this test needs updating.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-04-29 10:32:14 -07:00
Adam Williamson 5cd9c83e73 Ensure repos are set up for cockpit tests
When running these tests on updates we inherit the main disk
image from server_cockpit_default, which has the repo config,
but the actual repo data is on HDD_3 which is not inherited.
We need to re-download the updates here to ensure they're
available to the tests (the automatic update test installs the
dnf-automatic package, so it should pull it from the update repo
if it is part of the update being tested).

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-04-25 16:52:09 -07:00
Adam Williamson a7ec8ada2b container build test: configure for dnf5
When testing the update that implements the dnf5 switchover, we
need to patch the kiwi config on the fly for dnf5.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-04-25 15:29:15 -07:00
Adam Williamson 56281a41bd Update a FIXME notice
The bug number is wrong and I can't find the right one, d'oh.
We could *probably* safely remove this right now but I'm not
100% sure, I think it should be fine when F38 is EOL.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-04-22 17:56:44 -07:00
Adam Williamson c6d808ed23 Revert "Give `systemctl stop ipa.service` longer due to RHBZ #2100282"
This reverts commit b203f41f55.
The bug has been worked around for some time with a downstream
patch. Dropping the extended timeout means we'll notice if the
workaround is dropped prematurely or stops working.
2024-04-22 17:29:44 -07:00
Adam Williamson 691e82b1f9 Drop workaround for RHBZ #1943943
This whole complicated loop looks like it's no longer needed for
current KDE. It seems like we always refresh, then we hit
"Update All", and from there we go straight to "Restart Now".
Clicking the button always seems to work, we never seem to need
to click "Refresh" again. So, let's drop it and simply expect to
see and click Restart Now.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-04-22 17:04:52 -07:00
Adam Williamson bdae22d7de Drop another config-manager fixme
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-04-22 16:52:54 -07:00
Adam Williamson b614a38d6c Revert "Make evince test handle #2183356 (wrong save target on flatpak)"
This reverts commit 278b1e32b0.
The bug it worked around seems to have been fixed.
2024-04-22 16:52:05 -07:00
Adam Williamson ce2c511588 Revert "live_build: hack anaconda-webui out of kickstart on g-i-s update"
This reverts commit 0425be0d8e. We
only needed it for that one update and it went stable ages ago.
2024-04-22 16:33:47 -07:00
Adam Williamson f4bd3c6f58 Add a container build test
This test, much like _live_build or _installer_build, builds a
container image in a way intended to be as similar as possible
to how official compose images are built. The purpose of the test
is to make sure updates do not break official container image
builds.

At the end of the test, we also check that the built container
is functional (at least, that we can run a 'hello world' command
in it). This can't really be rolled into podman.pm because that
test is more about testing podman itself, and it's just a one-
liner here anyway. We also run the 'if any packages from the
update are installed, are they the versions from the update?'
check inside the container, which required giving that check the
ability to 'wrap' the rpm commands to run inside a container.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-04-22 16:01:41 -07:00
Adam Williamson f9cda76860 Revert "Install composefs with podman/toolbox to workaround #2275820"
This reverts commit 7b29a8f1b2.
It should no longer be needed now containers-common added a
dependency.
2024-04-19 16:29:58 -07:00
Adam Williamson 7b29a8f1b2 Install composefs with podman/toolbox to workaround #2275820
containers-common seems to have inadvertently introduced a hard
dependency on composefs, but not expressed it as a package dep.
While I'm trying to get that fixed, let's ensure the podman and
toolbox tests don't fail on it.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-04-17 16:58:39 -07:00
Lukas Ruzicka d3a6beda3d Add the graphical upgrade tests.
This PR builds on some elements of the current upgrade process,
such as upgrade_boot, upgrade_preinstall, upgrade_postinstall, but
replaces the upgrade_run with graphical_upgrade_run to use graphical
methods to upgrade the system.
This would not be possible without necessary settings, that are
performed by graphical_upgrade_prerequisites.
Works for both Gnome and KDE.
2024-04-15 23:08:58 -07:00
Adam Williamson 34eba25858 KDE apps_startstop firewall: type password faster
This is obviously more prone to mistypes, but firewall-config
seems to be timing out if we take more than 25 seconds to type
the password, and we take juuust too long with type_very_safely,
even after tweaking the sleeps to shorter wait_still_screens
here. We could twiddle with those even more, but let's just go
with type_safely for now, if that turns out to be too unreliable
I'll change tack.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-04-15 23:08:20 -07:00
Adam Williamson 86c975e49a Whoops, fix a wait_still_screen call from last commit
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-04-13 14:59:14 -07:00
Adam Williamson 7465985c50 Add some waits to root password creation on ARM
This is failing quite consistently lately because we're typing
too fast, we need to wait a bit after the sudo su at least. Let's
be safer.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-04-13 14:22:30 -07:00
Adam Williamson adedf40b6f apps_startstop: don't rollback, defend against KDE mistypes
This comes from trying to fix the annoying recurring problem with
mistypes in KDE which has been going on since at least December.
First, we add the attempt to kind of 'precache' the kicker menu
in aasetting.pm. Then, I thought, all this snapshot loading has
to be putting a lot of load on the workers. And when each subtest
passes, it shouldn't really be necessary - they all end with
quit_with_shortcut(), which verifies that the app exited and we
got back to a blank desktop, so successful subtests should not
usually interfere with each other. We probably only want to
rollback on *failed* subtests, which is in fact openQA's default
behavior. There only seems to be one case where a test changes the
system state such that later tests might be affected, so I kept
always_rollback just for that one. I've run this through three
cycles on GNOME and KDE and it looks good.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-04-12 15:53:48 -07:00
Adam Williamson 96c75c5e28 Update tour needles for upstream changes
Various changes to the Tour text needed needle updates. The
final screen doesn't say "Have a nice day!" any more, so let's
rename that needle.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-04-12 12:04:25 -07:00
Adam Williamson 6b6cd20956 clocks/timer: don't always expect 'start' button
Since 46, the 1 minute button is a quickstart, it doesn't just
set the timer but starts it. So we can't always expect to have
to click the start button. Let's keep it working both ways for
now for respin testing, we can drop it once we're sure we're not
doing any testing on F39 any more.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-04-12 11:11:58 -07:00
Lukas Ruzicka b0bc18b187 Add a 'navigation' test for GNOME.
This PR partly solves the issue #301 when it adds the navigation
testing for Gnome. It uses the keyboard combinations to cycle through
running applications and checks that applications could be switched
accordingly. It also tests that you can switch between workspaces
and that you can move an applications to another workspace.
2024-04-10 21:46:43 +00:00
Adam Williamson 7e0cd0898e Make UEFI testing the default, add Secure Boot testing
This essentially inverts the x86_64 machines so that '64bit' is
UEFI and instead of a variant 'uefi' machine we have a variant
'bios' machine that is BIOS. The point is to make UEFI testing
the default. We also enable Secure Boot in the UEFI testing,
and add a test of UEFI fallback booting on various products.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-04-02 09:24:52 -07:00
Adam Williamson f1c23be409 Fix #2268505 workaround - move the actions push earlier
Oops, all other actions pushes need to happen *before* the reboot
action push, or the logic breaks.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-03-26 08:29:25 -07:00
Adam Williamson 1739f38061 Add a workaround for RHBZ #2268505
My anaconda patch for ensuring we get an EFI boot manager entry
on installs using bootupd (currently only 'canned', i.e. Atomic,
installs - IoT and Atomic Desktops - are affected) was rejected
and dropped in the latest Rawhide build. It'll probably also be
lost in the next F40 build. So install tests of affected images
have started failing. This is a kinda awkward workaround: on
UEFI canned installs, we check whether it looks like there is no
"Fedora" efibootmgr entry, and if so, we delete the entry for the
optical drive, so hopefully we'll boot via fallback path from
the hard disk on reboot.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-03-25 17:25:10 -07:00
Adam Williamson cc832a4ad8 Fix new logic in Clocks test
Whoops, we can't just use a straight match_has_tag there as we
did another assert in the middle...

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-03-25 08:22:53 -07:00
Adam Williamson 8ebf3bdddb Tweak Clocks alarm test for change in upstream code
Upstream now sets an alarm with no explicit recurrence inactive
after it is stopped (previously it assumed recurrence every day).
We need the test to handle both behaviours for a while (until
we are no longer testing < 46.0 anywhere).

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-03-24 09:47:21 -07:00
Adam Williamson a0eb2827b8 aarch64 kernel arg fixup: fix for bootupd
We now have some images using bootupd, at least Fedora IoT images
from F40 onwards do. These don't have a /etc/default/grub and
don't really intend you to run grub2-mkconfig. As advised at
https://github.com/ostreedev/ostree/pull/3150#issuecomment-1998768240
let's just add our required arguments directly in the BLS snippet
files.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-03-15 09:30:52 -07:00
Adam Williamson dc7ff01f27 toolbox: handle OCI images (as produced by Kiwi)
We changed to building toolbox container images with Kiwi. These
are OCI archives, not docker archives. So we need to call skopeo
appropriately.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-03-14 14:34:38 -07:00
Adam Williamson 4ee74a0bca iot_zezere_remote: add a safety wait after adding ssh key
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-03-14 08:32:25 -07:00
Adam Williamson 41f2adaf46 os_release: update for osbuild change to ISO names
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-03-14 08:25:26 -07:00
Adam Williamson 2b51d930b9 Tweak the IoT incomplete hub workaround a bit
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-03-08 08:49:52 -08:00
Adam Williamson 89686bceba desktop_background: drop F40 exemption
Now we have F40 backgrounds, we can drop this exemption and have
the test always fail on non-Rawhide again.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-03-07 16:05:51 -08:00
Adam Williamson 8da5b7c010 Work around IoT incomplete hub issue
This is a workaround for
https://github.com/osbuild/images/issues/309 , the IoT installer
showing incomplete spokes in the main hub. We work around it by
visiting them all.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-03-06 17:52:04 -08:00
Adam Williamson a5f9c88584 Tidy a couple of things that got missed in earlier commits
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-03-05 14:27:10 -08:00
Adam Williamson 33ea6ef506 podman: give bats test a bit longer to run
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-03-03 09:04:16 -08:00
Adam Williamson aeac70814b Drop the addrepo_metalink_graphical test
Anaconda has dropped the ability to interactively configure
additional repositories, so this test cannot work any more.
It's now possible only with inst.addrepo or a kickstart.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-03-01 16:55:59 -08:00
Adam Williamson 246e1c02af Give FreeIPA uninstall a bit longer to run
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-29 19:23:04 -08:00
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
Adam Williamson 4c83347d54 Adjust for webUI deferral to Fedora 41
Same as the deferral from 39 to 40, except one of the tests has
gone away in the mean time.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-27 19:49:40 -08:00
Adam Williamson 10b7f66a02 desktop_printing: wait a bit after switching back from console
This test is failing a lot recently on KDE because when we try
to launch konsole immediately after returning from a console to
the desktop, it is mistyped and we get a browser instead. Let's
try a little sleep after the switch back in case KDE just needs
to settle down a bit.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-27 10:17:38 -08:00
Lukas Ruzicka 614a2f5e5d Fix the failing KDE startstop tests. 2024-02-27 12:18:45 +01:00
Lukas Ruzicka e069a25396 Create a workaround for Flatpak Fonts start up.
On Silverblue, Fonts cannot be started using the menu_launch_type
for the first time, or it starts and crashes immediately.
However, if Fonts are started with flatpak run org.gnome.font-viewer,
it seems that the application starts and holds.
Let's start it using this workaround and when it still crashes, let's restart.
2024-02-23 12:38:42 +01:00