The way side tags work, every package in the distro is in the side
tag repo, so updatepkgs and updatepkgnames end up huge. To fix
this, we'll use a koji query for all packages that are actually in
the side tag to generate updatepkgnames.txt, and then use that to
filter the dnf command to generate updatepkgs.txt.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
This doesn't work because the output has the filename in it. We
need just the line count. catting the file to wc achieves that
as now it doesn't know the file name.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
We have enhanced the menu_launch_type to allow for
start checking and maximizing applications.
This PR uses the new functions wherever it seems
logical.
If special logic was used for certain cases,
we have not touched these to preserve the
exact behaviour.
The crash workaround for the Fonts flatpak is dropped because it
no longer seems to be needed with the latest version of the
flatpak, and dropping it simplifies this migration.
Fixes: https://pagure.io/fedora-qa/os-autoinst-distri-fedora/issue/358
This caused problems (particularly with the more obscure package
install paths like cockpit and realmd) before, but I don't really
like removing it, as it differs from real-world usage. Tests are
currently failing because of a bug in this repo wiping - in
upgrade_preinstall, we should wipe the file again after the
dnf -y update --refresh call, in case that reinstalls it - but
instead of fixing that, let's try just leaving the file alone.
The risk here is that we run into problems when the repo doesn't
exist, again. In theory we should not because it has
skip_if_unavailable=True , and everything *should* respect that.
But if it does turn out to still be a problem we'll have to
revert this and fix upgrade_preinstall.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
We currently use script_run (not assert_script_run) for the
catch-all update we run at the start of the test, and don't use
--best. This means that if a dependency issue happens at this
point, we don't catch it yet, we only catch it in _advisory_post.
By using assert_script_run and --best, we can fail on dep issues
at this point. We have to keep the _advisory_post check to catch
dep issues that crop up *later* in the test, including when
things like Cockpit or GNOME Software install updates and we
can't force them to use --best logic. But we can at least catch
*most* of them earlier this way.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
I think since the wayland port, sometimes clicks on
anaconda_blivet_part_drop_select are missed and don't open the
menu. So, if that happens, click it again.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Again to reduce direct usage of pagure.io, move the testdata
tarball (used by download_testdata) directly into this repo. For
now it includes repository.tar.gz, which is silly, but I'll send
a follow-up PR to openqa_testdata to drop that file if this works
out. This includes a script to produce the tarball from the base
repository, and adjusts download_testdata to get the tarball from
autoinst_url and update its unpacking logic (as this version of
the tarball has a top-level directory).
Note the tarball in this commit is actually from the branch that
backs https://pagure.io/fedora-qa/openqa_testdata/pull-request/1
to reduce size.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
The enhanced method of menu_launch_type does not cover for
special corner cases, where the application starts in a
specific mode (settings dialogues etc.)
This handles exceptions for Software.
The previous version of menu_launch_type took the name of the
application as an argument and it started the application.
To maximize the application or to check that it has started indeed
we had to do it manually.
Now, the application also takes "maximize => 1" or "checkstart => 1"
to maximize the application or check that it has started as optional
arguments to avoid doing it manually, while it still accepts just
the name of the application and behaves like it did before.
Note that if you decide to use the checkstart argument, you
also need to update the check-needles.py script to whitelist
the application needle tag, see the example test scripts
attached to this PR.
Fixes: https://pagure.io/fedora-qa/os-autoinst-distri-fedora/issue/329
This is intended to address the problem that we don't use the
buildroot repo for Branched between branching and u-t activation,
which often causes problems when newly-created updates depend on
builds that recently went stable. So instead of having logic in
the tests that sets up the buildroot repo only if the release is
Rawhide (or ELN), we'll do the decision about whether to set it
up in the scheduler (which decides based on info from Bodhi), and
just have the 'set up the repo' steps in the tests. Let's also
use the same code and repo name for ELN and non-ELN so we don't
have pointless divergence there.
Depends on the matching fedora_openqa change, of course - without
that, no test will use the buildroot repo.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
With anaconda on Wayland (in F42+), switching layout by key combo
does not work and it seems like it won't be fixed any time soon,
so let's do it by clicking instead.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
This adds two initial custom layout install tests for webUI, and
wires up some library functions for other tests to use. They may
need refining over time but this should be good enough for a
start.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
This new way is working better, but a few times I've seen it fail,
I think because it's matching the 'updates' link while it's still
scrolling so when it clicks, the link has moved and the click
fails. Let's wait a bit after we see it, then match *again* and
click, instead of relying on the last match area.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
A FreeIPA update failed tests because dogtag-pki and bind don't
provide the now-necessary virtual provides for users and groups
they create. These builds fix that, adding them as workarounds
before they go stable will let me rerun the FreeIPA tests and
let that update through.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
In recent Firefox, just pressing 'up' once doesn't seem to work
100% to scroll to the bottom of the list so we can see the Update
link. So, let's do it up to 3 times!
Signed-off-by: Adam Williamson <awilliam@redhat.com>
KDE live images for Rawhide are now built with Kiwi, so let's do
it that way in openQA too (including for stable releases because
it's awkward to do it any other way). Kiwi build steps are almost
the same whatever you're building, so convert the container build
test into a generic Kiwi build test and use it for both. mock
setup is shared between Kiwi and LMC, so let's factor it out.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
This is needed as ppp 2.5.1 accidentally went stable, don't want
to wait for the tests on this update to fully complete.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
The 'rawhide' tag repo used to be just a symlink to the 'fXX-build'
one, but With the on-demand repo changes, that's no longer the
case. It looks like the 'fXX-build' repo gets regenerated more
often than 'rawhide' (which seems to regen every two hours), so
let's use 'fXX-build' instead.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
In tests of the Rawhide anaconda update that ports to Wayland,
we often hit failures because the first attempt to click on
Installation Destination doesn't work. This only happened on prod
(not staging), it didn't happen every time (but quite often), and
we can't reproduce it manually, so it seems like a weird glitch
that we should just work around. Simply waiting a second and
clicking again seems to do the job, and should be safe even if
the first click works (the second click will just be on an empty
area of the Installation Destination screen, unless we have like
eight disks attached).
Signed-off-by: Adam Williamson <awilliam@redhat.com>
All the KDE flakiness lately is likely caused by the recurrence
of https://bugzilla.redhat.com/show_bug.cgi?id=2312900 , which
came back because the patch to fix it was inadvertently dropped.
This adds the F40 and F41 updates that re-introduce the patch as
workarounds to address the sluggishness.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Also be a bit more consistent about asserting we saw a terminal
and waiting a bit before typing stuff. We can drop the doublek
workarounds from the keyring tests as we no longer use the
kicker to launch the terminal on KDE (we use ctrl-alt-t shortcut).
Signed-off-by: Adam Williamson <awilliam@redhat.com>
This started out as just factoring out the repeated pattern for
launching a terminal on the desktop that came in with the i3
tests. But as I worked on desktop_login, which is a major user
of it, I noticed some potential cleanups and improvements in the
user switching stuff, and also realized we can turn that test
back on for KDE now - user switching was re-enabled in KDE a year
ago and is advertised to be reliable.
I don't think the "switch user from a lock screen" test fully
worked before, as we did not verify that we'd really switched
back to an existing session rather than starting a new one. Now
we do. Using the terminal to verify the logged-in user on all
desktops just keeps things simpler than using the kicker menu
on KDE (though if typing proves unreliable on KDE I may switch
this back).
Signed-off-by: Adam Williamson <awilliam@redhat.com>