Commit Graph

647 Commits

Author SHA1 Message Date
Adam Williamson 943c4193d3 Factor out the KDE launcher double-typing workaround, use it more
There's a couple of places where we do menu_launch_type in KDE
without doing this workaround first, and they do run into the
bug sometimes. Let's factor it out from the few places it's
already repeated, and add it to the places it is missing.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-06-11 16:21:00 -07:00
Adam Williamson 304699bc6f Defend even harder against progress spew in updatepkgs.txt
Seems current dnf5 has a bug which causes repository refresh
progress to be sent to stdout even with -q.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-06-11 09:13:01 -07:00
Adam Williamson 670d1072de Yet more timeout
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-06-11 08:17:22 -07:00
Adam Williamson e2fde7809c Bump advisory_check timeout even more for really huge "updates"
...well, in this case, the Python side tag, because side tags
that inherit have just *all* the packages in them.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-06-11 00:56:29 -07:00
Adam Williamson 5aaf78bf26 Adjust COPR / tag package info generation for dnf5 properties
dnf5 behaves differently from dnf < 5 in a couple of ways: like
rpm it does not always add a newline to the query format, and it
sends its status messages to stdout, not stderr. These commands
account for this and produce identical output with dnf < 5 and
dnf 5.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-06-11 00:33:36 -07:00
Adam Williamson a36e86fcf8 setup_repos: don't die on tag/COPR if there are workarounds
whoops, this bailout is too hard. we get here on tag/COPR path
if there are workarounds, that is fine.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-06-10 23:47:30 -07: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 af06ac0809 Add a workaround for alt-d-s not working right after login
This broke the KDE app start/stop test. We need to click on the
desktop before alt-d-s will work, for some reason.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-05-28 16:02:06 -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 46c0719e66 Let installedupdatepkgs generation take longer in a container
From https://openqa.fedoraproject.org/tests/2594954 it looks
like this takes more than three minutes for updates with hundreds
of packages when running in a container (in the container build/
validate test). So, let's give it more time in that case.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-04-25 10:51:51 -07:00
Adam Williamson 9f2d44a181 drop a FIXME on enabling/disabling repos with sed
dnf5 config-manager can now do this, but the syntax is different
to dnf4, and honestly, it seems easier to just stick with this
going forward than make it conditional on dnf version until
dnf4 goes away. So let's stop marking this as a FIXME.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-04-22 16:14:29 -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 d65aac4c83 Drop a no-longer-needed workaround
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-04-19 16:30:52 -07:00
Adam Williamson a8f547f5ef Fix check_prerelease when we don't care
I inadvertently broke this in the logic change in the previous
commit to this.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-04-14 08:36:50 -07:00
Adam Williamson a07ad20240 Add FEDORA-2024-b156c57ef1 as F40 workaround to fix upgrades
See https://bugzilla.redhat.com/show_bug.cgi?id=2274833. Upgrades
from F39 to F40 fail without this.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-04-12 18:59:41 -07:00
Adam Williamson fcbb00d0ac Drop workaround which went stable weeks ago
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-04-12 18:59:24 -07:00
Adam Williamson 4938c0e5ae Make pre-release check a soft failure on osbuild images
osbuild is struggling with the pre-release warnings ATM:

https://pagure.io/fedora-iot/issue/57
https://github.com/osbuild/images/issues/515

Until that mess is cleaned up we can't really make sensible
assertions for osbuild images, so let's make the check a soft
failure for now (now we know about the bugs, we want to let
the rest of the tests run and not block them on this).

Note for IoT the behaviour has never really been correct (IoT
images never get pre-release warnings), but the logic in this
check matches the wrong behaviour (IoT composes always have
RC- labels even when they're clearly not RCs), so the test
didn't fail. While fixing this in osbuild we might try to get
'correct' behaviour for IoT, and then we'd need to tweak the
logic here.

While we're at it, tweak the implementation a bit; without this
tweak, implementing this 'soft fail if osbuild' behaviour is more
awkward and ugly.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-04-12 09:00:25 -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
Deborah Brouwer 4eec75bec3 Get dns server address if host isn’t using systemd-resolved
The worker containers aren’t using systemd-resolved so
get_host_dns() can’t find the dns server causing tests that need
it to fail. Add an alternative place to look for the dns server address
that doesn’t rely on systemd-resolved.

Signed-off-by: Deborah Brouwer <deborah.brouwer@collabora.com>
2024-04-05 21:10:11 +00:00
Lukáš Růžička f48dc5a0d5 Add wait_still_screen to menu_launch_type.
This is actually a very useful to wait a little bit before
we try to operate with the started application, especially
if we want to send keys.

Having this wait time here can save us doing this every time,
we start an application.
2024-04-05 14:09:28 +02:00
Adam Williamson 5701d1a5a5 Try and robustify menu_launch_type a bit
The mistypes on KDE are bugging me. Let's see if this - mainly
the wait_screen_change, the other just seems like a logical
tweak - helps at all.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-04-04 11:19:16 -07:00
Adam Williamson f6273425ee Add FEDORA-2024-01fd5aa621 to workarounds
gvfs from the GNOME 46 megaupdate needs it. It's been pushed
stable but not included in a compose, yet.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-03-23 17:12:40 -07:00
Adam Williamson 92c822a719 Clear no-longer-needed update from workarounds
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-03-23 17:12:11 -07:00
Adam Williamson b20aac5373 Add FEDORA-2024-b8e524ffdd as F40 workaround
It's queued for stable but blocked by the freeze, and
FEDORA-2024-9c9174f3dd requires it. Let's just make it a
workaround to clear the other update's tests.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-03-15 09:22:56 -07:00
Adam Williamson 30a71127c0 Clear F40 workarounds list
All updates are now stable.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-03-15 09:21:55 -07:00
Adam Williamson b8fddfa265 Fix the logic for skipping _repo_setup_updates
Just checking for the package update list is wrong in a couple of
ways:

1. It goes wrong for child tests that inherit the main disk from
the parent test, but not the second disk where the actual update
repo lives. They'll have the package list, but not the repo. So
we should test for both the package list and the repo dir.

2. It goes wrong for side tag tests, because we don't write a
package list (or create an update repo) on that path. So on that
path let's check whether we already created the repo definition
we use on that path.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-03-13 10:49:05 -07:00
Adam Williamson 460eee87bc updates: test Silverblue install on UEFI as well as BIOS
https://bugzilla.redhat.com/show_bug.cgi?id=2268505 made it
clear that this is a bit of a hole. We don't test installing the
Silverblue image we build on UEFI, only on BIOS. Add this as a
separate test so we don't uselessly upload a disk image we won't
use for any follow-on tests.

This also adds an anaconda build that fixes a bug in this path
as a workaround for F40, so the test won't fail on all F40
updates.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-03-07 16:13:02 -08:00
Adam Williamson 9d1ae2aaf7 Add kde-settings update as a workaround too
This should mean all F40 update tests get the new background,
and we can once again make that test fail if it doesn't see it.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-03-07 16:03:18 -08:00
Adam Williamson 02015ed5a0 Add F40 backgrounds update as workaround
So the kde-settings update can pass tests.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-03-07 15:54:51 -08:00
Adam Williamson cca9f90c8a Drop workarounds that have gone stable
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-03-07 15:52:54 -08:00
Adam Williamson d42ada609b f41 workarounds: add realmd update needed to fix FreeIPA tests
a realmd update a few hours ago broke FreeIPA enrolment. This is
the fix.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-03-01 10:23:54 -08:00
Adam Williamson b348f47108 workarounds: drop dogtag-pki update that went stable
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-03-01 10:23:34 -08:00
Adam Williamson 43be62ac01 Add FEDORA-2024-ff7b17cdea as workaround for FreeIPA Java issue
The Java 21 update broke FreeIPA and was waived stable. This
update rebuilds dogtag-pki and should fix it.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-29 17:43:02 -08:00
Adam Williamson 8dbcca38b0 clean up workarounds
Drop two that went stable, replace a scratch build with the
official update.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-29 17:42:27 -08:00
Adam Williamson b1d0d448ea Give setup_repos.py longer for huge updates
Looking at you, FEDORA-2024-9b9da603e1

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-29 09:32:45 -08:00
Adam Williamson ec11ce7903 Add FEDORA-2024-4afc8e64b0 to F40 workarounds to fix g-i-s pages
I missed reverting the g-i-s page skip config when deferring
the webUI Change to F40. Now I changed the conditional in the
openQA test to expect F40 to behave like F39 and earlier, it's
failing because it's seeing too many pages. This should resolve
it.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-28 00:31:53 -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 2bc144ad0b Add workarounds for ostree overlay issue (#2266344)
jlebon and jmarrero figured out the fix for this, while we wait
for the packager to merge it their preferred way, let's use
scratch builds to work around it so every update doesn't get a
failed test.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-27 15:16:49 -08:00
Adam Williamson ad394a7feb Drop workarounds that have reached stable
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-27 15:13:13 -08:00
Adam Williamson c146bf4384 Add a couple of needed builds to F40 workarounds
Another case where an update was submitted after its deps had
gone stable, but before they made a compose. Maybe we really need
to set up a buildroot repo for tests of updates to branched-before
-bodhi-activation too. I'll think about it.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-22 12:49:49 -08:00
Adam Williamson 4a6d52e91e Add g-i-s build with live-user mode reverted as a workaround
Now the fedora-kickstarts PR to remove anaconda-webui was merged
we need this for tests to pass. Remove after next compose.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-21 15:33:32 -08:00
Adam Williamson cb695c7e67 drop a workaround that's gone stable and into a compose
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-21 15:33:04 -08:00
Adam Williamson 15037690cc Add FEDORA-2024-5feb9b58f5 to F40 workarounds
Needed to make the tests for FEDORA-2024-039bae341c pass, I
don't wanna wait for a compose.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-20 18:20:16 -08:00
Adam Williamson 2c520e47c8 Drop update that's gone stable and into a compose from workarounds
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-20 18:19:44 -08:00
Adam Williamson 6c47319930 Add FEDORA-2024-11ba4726a4 as workaround for F40
The new gnome-shell from FEDORA-2024-f543e8595c requires this.
We don't use a buildroot repo for Branched even in the short
period where it acts like Rawhide (no karma or time requirements)
so let's just use a workaround.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-16 13:05:54 -08:00
Adam Williamson 06de92375f Clear workarounds that have reached composes
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-16 13:05:22 -08:00
Lukáš Růžička 8c027c9e10 Unbreak the /etc/release test by fixing a spelling typo in the function. 2024-02-16 13:32:01 +01:00
Adam Williamson bd25bdac69 g-i-s: we always need two tabs to get to password confirm now
F38 is the oldest thing we test, and it has this flow. So let's
just drop the check here and always hit tab twice.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-14 15:24:32 -08:00
Adam Williamson 9ffd181bbd Don't expect g-i-s online accounts page on F40+
It was removed upstream:
https://gitlab.gnome.org/GNOME/gnome-initial-setup/-/merge_requests/221

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-14 15:19:46 -08:00
Adam Williamson edcbf6a524 Wipe the openh264 repo a bit harder
We should wipe it both before and after running repo_setup to
really get rid of it. Ideally we should stop doing this at all,
but for right now the repo isn't there for Rawhide post-F40
branching yet, so let's keep this until that's done.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-14 14:22:44 -08:00