In GNOME 49 RC, the Time Zone page has been changed so the search
box is active by default. Previously we had to press tab to
activate it. We need to keep working with both, so unfortunately
that means adding a needle :/
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Two different dep issues started breaking tests today -
a libiscsi soname bump broke deps in qemu and libvirt, and a
gnome-shell-extension-background-logo update had an invalid dep.
This adds fixes for all three as workarounds so I can get the
tests of each to pass, and other tests to pass while these are
going through gating.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
@kparal pointed out that it's a bit inconvenient to quickly check
the journal and any SELinux AVCs for a failed test. All the info
is in the /var/log tarball, but you have to download it, extract
it, and know how to run journalctl on it. For convenience, this
adds a text dump of the journal and one of any AVCs found with
ausearch.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
This makes us create a generic cloud disk image and then run
tests on it, just like we do for Workstation and KDE lives,
everything netinst, Silverblue, and a container image. This is
intended to help avoid anything like
https://bugzilla.redhat.com/show_bug.cgi?id=2390898 happening
again - if we'd had these tests set up and gating enabled, the
update that caused that bug would've been gated.
This requires some changes that affect other things: bind mounting
the whole of /dev in our mock config when using simple isolation,
and forcing START_AFTER_TEST to "" for kiwi_build (this is needed
to override the setting of it in the updates-cloud flavor). bind
mounting is what koji does for 'real' kiwi build jobs so it's fine
(in fact, better); previously the mock config was shared with
livemedia-creator, but we don't use that any more so it's not a
problem.
It's a bit icky when we get to the point of having *multiple*
+START_AFTER_TEST settings, but I can't see another way to get
everything right here and still share the test suite definition
with compose tests.
Moving the definition of KIWI_PROFILE for container tests is not
strictly related, but I noticed it was weird while working on
this and couldn't leave it alone.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
This is intended for things like system monitor where there's
constant motion on the app screen so we can't wait_still_screen.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
In anaconda 43.33, the user name field is prepopulated with
whatever you typed in the full name field, so let's wipe it.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
It's needed to get workstation tests to pass, as the earlier
xen/qemu update broke qemu's deps and it's installed by default
in Workstation. Remove when the update goes stable soon.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Since this bug means the whole filesystem list isn't displayed,
hit up until we find the thing we need. Adds the needle needed
for EFI system partition when it's already highlighted, as it's
at the top of the list. Others *should* work by scrolling past
them.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
This handles differences in webUI's appearance on the KDE live,
compared to the GNOME live which suppresses keyboard layout
selection, user creation and root password creation. By Lukas,
modified by Adam.
F42 to F43 upgrades suddenly started failing, and I think this
is why - we actually wind up installing packages from the target
release in setup_repos (called from repo_setup), because we set
up the buildroot repo then run some dnf commands. Let's tweak
that so for upgrade tests we create the buildroot repo disabled
at first, then enable it in upgrade_run.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
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>