Commit Graph

1227 Commits

Author SHA1 Message Date
Adam Williamson 53bd47d909 Disable modular repos for upgrades to F39 as well (#2230720)
We know this is broken and we don't want it to fail on every
update, so we need to work around the problem for now.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-08-09 14:25:24 -07:00
Lukas Ruzicka 8ac3885897 Make various fixes in Workstation product to make tests pass. 2023-08-08 14:50:03 +02:00
Adam Williamson ae7d5011df Fixes for Active Directory client tests
abbra told me where I was going wrong with the 'expected' target
of the getent command ("AD/" is not a magic string, it's just
"(netbiosname)/", and our netbios name is "SAMDOM"...) so this
fixes that too, trying to avoid hard-coding stuff.

For the kickstart test, it seems like it's a timing issue. We
added this 'install sssd-tools and enable debugging' step to try
and debug it, and instead it fixed it. So...let's just stick
with this, for now, because it's useful to have this debugging
anyway. If the problem starts happening again, we can fiddle
about with it more.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-08-05 11:22:37 +01:00
Adam Williamson 601d0c4f96 Disable modular repos for Rawhide upgrades to avoid #2228827
As 'real' upgrades (using releases/development/rawhide on the
mirrors) do not hit this bug because it has a stale Modular
tree, it makes sense to work around the bug in testing so we can
see if upgrades are broken in any *other* way.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-08-05 09:44:13 +01:00
Adam Williamson 92dbd802e8 koji-rawhide: set skip_if_unavailable=1 for now due to 404 issues
We're seeing a lot of tests fail on 404s when trying to access
the koji-rawhide repo (the repo for the Rawhide build tag, which
we use to get packages tagged since the last compose. nirik is
trying to figure this out from the server end, but for now at
least, let's mark the repo as skip_if_unavailable. This should
mean that if we hit a 404, the test will continue, it just won't
have access to the packages from that repo. Occasionally this
will cause a problem - a false failure or false pass - but this
still seems better than every test that hits it failing. The
false pass case is the most concerning, but I would hope in that
case some other tests from the same update would fail, making it
not an issue.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-08-02 09:10:55 +01:00
Adam Williamson 6f0480727f Make sure live image volume ID isn't longer than 32 chars
This can happen now we allow working on multiple Koji tasks.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-07-28 15:10:37 -07:00
Adam Williamson 2e572d72b6 Add --http1.1 to one curl command that didn't have it
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-07-28 10:50:15 -07:00
Adam Williamson 0e01e4e659 Use fXX-build in the koji-rawhide repo definition, not rawhide
Per nirik, 'repos/rawhide' is just a symlink to 'repos/fXX-build'
and this could possibly be part of our 404 problem. So let's
try using fXX-build directly instead of the symlink.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-07-28 10:31:32 -07:00
Adam Williamson 74b468b949 Add Samba AD tests
This adds a Samba AD server test, and client enrolment tests via
sssd, Cockpit and kickstart. Requires the matching createhdds
commit to add the kickstart to the disk_ks image.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-07-27 16:14:30 -07:00
Adam Williamson ba1d492416 ostree: only use --unified-core on F39+
I think it's breaking F37 and F38 tests, not surprisingly as we
didn't do all the fixes there.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-07-27 12:26:23 -07:00
Adam Williamson bf4a8ec454 Enable unified core for ostree composes
It got enabled in production, so we should do the same here.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-07-25 18:35:58 -07:00
Adam Williamson 2d6180b25e Try forcing HTTP/1.1 for pagure.io git clones
The change to the curl commands to force HTTP/1.1 seems to have
stopped them failing, so let's try doing it for the git clones
too and see if that avoids the problem till we can work out
what is causing it.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-07-24 11:56:28 -07:00
Lukas Ruzicka 0a10727a7a Remove modularity tests.
Modularity will be retired in Fedora 39 and the modular repository
removed. Also, the upcoming version of DNF that is default in
Rawhide, does not support modularity, so the tests are currently
failing anyway.
2023-07-20 10:23:44 +02:00
Adam Williamson d5a9e4777e Retry all pagure.io downloads
This tweaks all pagure.io downloads to be retried a few times,
since we seem to be getting failures quite often. We use curl
for this as it has nice options for it.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-07-19 13:37:29 -07:00
Lukas Ruzicka 3e7936fd01 Replace the dropped pactl with amixer to manipulate audio levels. 2023-07-17 14:30:05 +02:00
Adam Williamson f49c8bc66b gnome-text-editor: only handle spellcheck language if needed
The Flatpak build doesn't have the spellcheck issue at the
moment, and it may be fixed soon in the RPM build. Trying to
'fix' the issue on the flatpak build actually makes the test
fail. So, let's only do the fix if we actually have a misspelled
word.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-07-05 12:19:41 -07:00
Adam Williamson ba9a36d10e g-t-e: mark 'new_file' test as fatal
The tests after it assume new_file ran - they rely on the file
it creates - so it should be considered fatal.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-07-05 11:39:18 -07:00
Adam Williamson 1f24f84bb1 Support testing a side tag instead of an update or task
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-07-04 19:10:03 -07:00
Adam Williamson d8c374044a Add more safety to the fullscreen for Archiver
We can't really just hit super-up and then immediately go on our
merry way clicking on stuff...

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-07-04 17:25:52 -07:00
Adam Williamson 20a2d161ca Add some safety to g-t-e language setup
Seems in Rawhide the menu is loading without dividers briefly,
we match there, then the dividers load in and make the menu
longer, so when we click, we hit a different entry in the menu.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-07-03 11:31:48 -07:00
Lukas Ruzicka d749317f29 Update the Gnome-Text-Editot test.
The editor started to show spell-checking that would require a lot
of new needles to be created. Theredore, we set the language to
English to stop showing the spelling mistakes in aaa_setup.pm

Also, the application started to have problems with getting correct
focus, so we want to click into the text before the status gets
recorded.
2023-06-30 14:26:00 +02:00
Adam Williamson fbb9bd7386 Revert "_live_build: workaround util-linux-user problem for KDE live"
This reverts commit efc2f8ae36.
As the comment said, it's no longer needed.
2023-06-28 16:52:48 +02:00
Adam Williamson 5c6ae24e99 _live_build: FIXME for using three disks
Change the comment on why we put /var/lib/mock on the third hard
disk: we probably can cut it down to two, now, but I don't want
to do it right now.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-06-28 16:48:55 +02:00
Lukas Ruzicka 4c426051ce Remove the Photos start-stop test.
Based on the information that the application has been removed
from the standard Workstation installation, see
https://pagure.io/fedora-comps/c/462b65876fb4258fdb2ce19f4193900ef2bdc2d9?branch=main,
we remove that application from this suite.
2023-06-28 13:44:31 +02:00
Adam Williamson 500fea03ad Fix workaround repo in live images
D'oh. This is the first time we actually tried to use the new
workarounds ISO thing for real, I forgot to update some paths.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-06-26 01:50:49 +02:00
Adam Williamson 0a87a76ff9 Run base tests on ELN
This requires a change in the package we use for base_update_cli
because pandoc-common is not in ELN.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-06-23 11:53:11 +02:00
Lukas Ruzicka bc8601a1d4 Create test for the Tour application. 2023-06-23 10:53:58 +02:00
Adam Williamson 3bce9f1007 Type more safely in the gnome-panel volume bar test
The shifted characters here frequently get mistyped. Let's use
type_safely. If this isn't enough we can try very_safely.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-06-23 10:52:33 +02:00
Adam Williamson 6fefd092e9 Try and fix Cockpit tests breaking with update ISO change
We drop the line for the update ISO from /etc/fstab before
uploading the image after the cockpit_default test, but we don't
make sure it's set up again before Cockpit tries to use it, in
the subsequent Cockpit tests. I don't know why this didn't fail
on stg before, but it sure as hell is failing in prod...

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-06-20 15:18:01 +02:00
Adam Williamson 74730f904a Workaround config-manager plugin missing from dnf5 using sed
This is ugly, but ought to work, I hope.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-06-20 12:42:34 +02:00
Adam Williamson 7be16956d7 Use "dnf group install" not "dnf groupinstall" (dnf5 support)
dnf4 and dnf5 both support the former, dnf5 does not support the
latter.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-06-20 12:27:30 +02:00
Adam Williamson 97618193c6 Adjust tests for update and workaround repos provided as ISO
I'm attempting a new approach to the update and workaround repos.
Instead of having each update test recreate them for itself -
which is slow and wastes bandwidth - the dispatcher will create
an ISO at test schedule time and pass it as ISO_2. Then the test
just mounts the ISO. This makes the necessary adjustments on the
test side.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-06-19 20:21:07 +02:00
Adam Williamson b0fb6911f3 Add initial template stuff and test tweaks for ELN testing
Just a couple of flavors and tests for now.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-06-19 17:28:42 +02:00
Adam Williamson 326ea5c913 Brown paper bag fix for modularity_setup
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-06-19 17:08:05 +02:00
Adam Williamson 8b997279a4 vnc: give a dnf install command a bit longer to run
These can take a while if repos haven't been refreshed lately.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-06-19 12:42:03 +02:00
Adam Williamson 317deff82c disk_custom_with_swap: drop root part size to 6G
With the new 2G max EFI system partition size, we were trying to
stuff 12G of Fedora into a 10G disk. That wasn't going to work.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-06-19 12:30:52 +02:00
Adam Williamson 2427d8c0dc ostree: get ostree-parse-pungi.py from main again
whoops, forgot to reset this on merging the change.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-06-19 11:21:29 +02:00
Adam Williamson 30563c6aed Simplify the blivet resize LVM testcase
I don't think we need an alternative needle for ppc - the
current 'boot_inactive' needle should work fine on ppc. Let's
just always use that.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-06-18 13:00:07 +02:00
Adam Williamson 426747c368 Adjust modularity_tests to enable the modular repos at the start
As of yesterday's Rawhide, the modular repos are not installed by
default, so of course all the modular tests fail. So, install
the repos before running the tests.

This isn't conditionalized on release version as I don't think
we ever run this test on anything other than Rawhide and
Branched.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-06-18 11:15:56 +02:00
Adam Williamson d964129736 ostree rebase: drop an old unneeded workaround
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-06-12 08:56:26 -07:00
Adam Williamson e8df07813b ostree rebase: for update tests, check we deployed custom ref
This checks we actually deployed the 'fedora-openqa' ref as we
intended to (if not, the rebase test probably won't work
properly or won't test what we want it to).

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-06-12 08:55:32 -07:00
Adam Williamson d07b5a4178 Tweak ostree build and rebase for update tests to be more robust
We have had several problems where rebasing from one release to
another just doesn't work, and we have to work around it somehow.
Sometimes it's difficult or impossible to do. All we want to do
here is check the rebase mechanism itself; we don't actually want
to assert that you can rebase to any specific other release.

For update tests, we should be able to use a non-standard ref
name for the ostree we build, embed into the installer image,
and install. That should mean we can then rebase to the standard
ref name for the same release, which should be much safer than
trying to rebase to a different release. We can't do this for
the compose tests, but at least for update tests I'm hoping this
makes things more robust.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-06-11 21:06:57 -07:00
Adam Williamson abc60d23c8 Drop dnfdragora from KDE app start/stop tests
It's not in the images any more. As aleasto pointed out, we're
actually being sent to Discover to install it, and matching on
*that* screen, which isn't what we intend.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-05-30 14:05:42 -07:00
Adam Williamson 2dade9e1d9 Revert "Workaround a notification test issue on F35 KDE"
This reverts commit a35befab8c. Per
https://openqa.fedoraproject.org/tests/1867885#step/desktop_notifications/30
and https://openqa.fedoraproject.org/tests/1932066#step/desktop_notifications/30
, in both F37 and Rawhide, clicking away an akonadi notification
no longer closes the panel, so it looks like we don't need this
any more.
2023-05-24 14:51:19 -07:00
Adam Williamson db89554357 _support_server: only create temp dir when needed
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-05-24 11:17:47 -07:00
Adam Williamson efc2f8ae36 _live_build: workaround util-linux-user problem for KDE live
util-linux-user subpackage was removed but comps wasn't updated.
I've fixed comps now, but that won't "kick in" until after the
next Rawhide compose; we need to workaround the issue until then.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-05-18 09:26:58 -07:00
Adam Williamson 3462050cf7 _live_build: drop some workarounds we shouldn't need any more
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-05-18 09:24:55 -07:00
Adam Williamson 37bd56033d nautilus: adjust keyboard shortcut page navigation
As recommended by @mclasen in
https://gitlab.gnome.org/GNOME/gtk/-/issues/5831#note_1743386 .

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-05-16 16:09:04 -07:00
Adam Williamson b1e975a21f anaconda: end install immediately if we see the error screen
If install errors out, currently we still wait like an hour for
an "install_done" screen that will never come, before we give
up. Since we have a needle for the "unknown error has occurred"
screen, we may as well use it here - if we see that screen, we
can just die immediately. This may go stale if we forget to
update the needle, but it's only one line, so meh.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-05-16 15:40:02 -07:00
Lukas Ruzicka e211a87fc7 Create a test suite for Disks. 2023-05-12 17:05:44 -07:00
Adam Williamson 119229cce7 Add a needle cleanup script, enhance the needle check script
This adds a new script - cleanup-needles.py - to use for cleaning
up old needles. It has to be used in conjunction with a database
query; the comment at the top explains how to do that query and
export the needed information. It produces a git commit with
needles that haven't matched since a certain date (specified in
the sql query) removed, subject to a 'keeplist' of needles we
keep even if they seem to be old.

I also enhanced check-needles.py to check for cases where tests
seem to be trying to match a tag we have no needles for. This
was necessary to find cases where the cleanup script was too
aggressive (i.e. the things that wound up in the 'keeplist'),
but it also turned out to find quite a lot of cases where the
code really *was* looking for a needle that had gone in a
previous cleanup or that never existed; the commits before this
one clean up a lot of those cases.

The code to decide which string literals are needle tags is
pretty dumb and hacky and needs some manual cueing sometimes -
that's what the `# testtag` changes in this commit are for.
Making it smarter would probably require this script to get a
lot more complicated and either incorporate or become a
tokenizer, which I don't really want to do.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-05-04 09:57:15 -07:00
Adam Williamson 1effed1069 Drop unused branch and needle in desktop_login
We never hit this path without a system menu button any more,
due to changes in KDE over time. It hasn't been hit for two years.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-05-04 09:57:15 -07:00
Adam Williamson 3e6e80ca87 Drop a no-longer-reached branch and associated needle
Now both GNOME and KDE do offline updates on all supported
releases, we never see an 'update done' screen any more. This
branch is left over from when the KDE offline update branch was
still conditional on release number.

If we ever implement this test on a desktop that doesn't do
offline updates, we can put this back easily enough.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-05-04 09:57:15 -07:00
Adam Williamson c7e0af6e8c Simplify blivet_btrfs_preserve_home, drop unneeded needles
There's no need to do all this 'check whether it's selected and
click it if not' stuff (for three different mount points). Just
always click it. If it's already selected, clicking it again
doesn't hurt (one of these stanzas even clicks it *even if it's
selected*!)

If we need to cover both cases, we just need two needles with
the same tag, we don't need separate code paths. In each case,
though, we actually haven't matched one of the needles for ages
(the most recent was part_boot_selected, but now we're using
GPT by default, we won't hit that any more as it'll be the BIOS
boot partition that's selected by default), so delete the needles
we aren't matching any more. If we *do* hit any case where we
need to handle the 'other' state, we can just add the alternative
needle with the same tag.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-05-04 09:57:15 -07:00
Adam Williamson 73e9c5c27e Drop a check for ext4 filesystem already selected
This has not been hit for a year (on stg; three years on prod).
I *think* it would only be hit if we ran the test on an Everything
image, but as the test is now specifically associated with the
Server install DVD, that doesn't seem likely to happen.

If we somehow *do* hit ext4 pre-selected again, this can still
be handled simply by adding an alternate
anaconda_blivet_part_fs_ext4 needle which matches on ext4 already
being selected; that avoids the need to keep an alternate code
path around.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-05-04 09:57:15 -07:00
Adam Williamson b62d832c3a cockpit updates: drop the security branch, update 'ignore' needle
This branch is very fragile, because the test won't fail if we
miss the match on the security needle. So in practice, we are
never going to notice when the needle goes stale, and we'll just
wind up never triggering this branch and always going down the
other path. That's the current situation: the security_install
needle last matched more than a year ago at least. Let's just
admit the truth here and drop the branch entirely.

Also update the cockpit_updates_restart_ignore needle. This is
in a similar case - we don't really notice when it goes stale,
as the test completes, it just takes a bit longer - but since
this one is quite easy to find, let's just update it instead of
dropping it.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-05-04 09:57:15 -07:00
Adam Williamson 9199f8a0f0 Drop gnome-contacts softfail for "Unnamed Person" problem
This was resolved upstream and we're no longer hitting this bug
in tests on F38, Rawhide or even F37 respins, so we should no
longer need this workaround.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-05-04 09:57:15 -07:00
Adam Williamson 7dece68ae6 Drop old branch of gnome-text-editor 'skins' test
This is never hit any more, everywhere we run this test is on
the newer code now.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-05-04 09:57:15 -07:00
Adam Williamson 1de9d7fa34 Drop click_unwanted_notifications (and associated needle)
It looks like neither of these has been a problem for some time.
The notification needle has not matched for a year. The akonadi
needle doesn't exist any more - it was cleaned up in the 2021
needle cleanup, meaning it hadn't matched for weeks in 2021. I
checked the last several months of KDE app start/stop tests and
don't see any case where there was a stray notification that we
missed. So I think we can just ditch this whole mechanism for
now; if we have problems with these notifications again in future
we can put it back.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-05-04 09:57:15 -07:00
Adam Williamson 51e7b28978 Correct 'grant_access' needle name in several tests
Several tests still had the old 'apps_run_access' name which we
changed some time ago, so these safety checks weren't working.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-05-04 09:57:15 -07:00
Adam Williamson 039f3c265e Drop a useless check_screen (needle missing)
This check_screen always fails, because the needle doesn't exist
and never has - the commit that added the check_screen didn't
add a matching needle. In every run of the test I've checked from
the last two months, the initially-selected filesystem is always
xfs anyway. Let's just drop the check_screen conditional and
always expect we have to set the correct filesystem.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-05-04 09:57:15 -07:00
Adam Williamson 5cab5ec565 Move most 'universal' tests to Server-dvd-iso
The 'universal' flavor has been kinda pointless for some time
now. It dates back to the earliest days of openQA, before Pungi
4 was a thing, when composes were very different; we only built
a boot.iso and some live images nightly for Rawhide, these
weren't even formally grouped as a 'compose' at all (fedfind had
to invent the concept). The TCs/RCs had DVD installer images
(not *Server* DVD, at the time, just a universal DVD installer).
We wanted to run some tests on the DVD image if it was available,
but we still wanted to run them for the nightlies, so we invented
a whole mechanism for that - this 'universal' flavor, with some
complicated logic in fedora_openqa which schedules universal on
the 'best available' image it can find in the compose.

All this is functionally obsolete now. All composes we test are
now run through Pungi (except the live respins, but they aren't
relevant here). In current config, the Server DVD is non-failable
on x86_64 and aarch64, which means it will *always be there* -
if it fails to build, the compose itself fails, so we won't test
it. It's failable for ppc64le, but we don't care that much about
ppc64le; I'm fine with these tests just not running if the Server
DVD happens to fail in a ppc64le compose.

As a cherry on top, some of the 'universal' tests aren't really
universal anyway, they fail if you run them on a netinst (off
the top of my head, all the NFS install tests are like this, as
we use the ISO to populate the NFS share on the server end).

So let's just move all the tests that actually need an installer
image to the Server-dvd-iso flavor. Left over in the 'universal'
flavor are upgrade tests, which don't need an ISO at all - they
boot from hard disk images and run an upgrade using repos. We
can change the scheduler logic to be more simple for these, and
just always schedule them, with no ISO attached. We could even
rename this flavor 'upgrade', but it might not be worth it.

One slight complication is that the split happened to be helping
us avoid too many tests in a single support_server cluster; we
have a cluster of five support_server tests on Server-dvd-iso
and five support_server tests on universal. I try to avoid the
clusters getting too big as you need as many worker instances on
at least one worker host as your largest cluster; if you don't
have that many, the cluster's tests simply never get scheduled.
Requiring folks to have at least ten worker instances on one
host to run these tests is a bit of a big ask. So, to handle
that, we create a support_server_2 and have the former universal
tests use that one instead, so we'll have two separate clusters
on Server-dvd-iso now.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-05-03 16:29:38 -07:00
Adam Williamson e89ec3017a Update serial console handling for upstream changes
Upstream https://github.com/os-autoinst/openQA/pull/4973 requires
us to poke things here a bit. This only works with the newer
os-autoinst and openQA (there may be a way to conditionalize it
to work with both, but I can't be bothered figuring it out, let's
just update).

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-05-02 12:24:26 -07:00
Adam Williamson 0f781bdaf2 Robustify the scrolling in the Help app test
This keeps failing on the accessibility section, and looking at
the screenshots I realized why. When you press 'down', GNOME
doesn't just 'snap' to the new view, it does a smooth downward
scroll. We're often matching *while it's scrolling*, so the
needle match is right at the bottom of the screen. But then the
animation continues, so when we get to the click action (even
though we use click_lastmatch it's not *instant* in openQA),
the thing we're trying to click (the "Accessibility" section
title) is a bit further up the screen, and the click 'misses'.

So, we need to wait out the scroll then re-assert and click.
This unfortunately will make the test take about 30 seconds
longer, but I don't see another way to do it. We could maybe
shave the wait_still_screen to one second...

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-05-02 09:37:02 -07:00
Adam Williamson 7860f32b96 Give podman a bit longer to install
It's taking quite a while in Rawhide ATM, seemingly due to a
scriptlet in a dependency.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-04-22 16:35:22 -07:00
Adam Williamson 853ed17664 Handle app appearing before access request in gnome-panel test
Similar to the dedicated tests for these apps, the app can appear
for a split second before the access request, so we match on the
app and don't realize we need to click through the access
request. Handle this the same way we do in the dedicated tests.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-04-22 11:03:00 -07:00
Adam Williamson da3f9df5b7 _check_install_source: more fixes for upstream changes
anaconda is really kicking log messages around lately.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-04-14 14:04:51 -07:00
Adam Williamson 8bc74fd5dc panel: also handle permission request for Clocks
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-04-14 13:54:37 -07:00
Adam Williamson a678f783cb nautilus delete_file: correct name of second file
The second file that we delete and don't restore is called
evince.pdf these days.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-04-11 11:15:05 -07:00
Adam Williamson 0271642f61 Adjust _check_install_source for more changes in anaconda
Another message changed format a bit, and all the messages are
now showing up in syslog instead of packaging.log, so handle
all possibilities here. I had to split the first check into two
commands because I can't seem to make it work if I try and do it
all in one command with bracket groups :/

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-04-11 10:58:09 -07:00
Lukas Ruzicka 7291e3526e Create a test for Gnome Panel. 2023-04-06 15:50:43 -07:00
Adam Williamson abf80ad384 tidy a recent change to characters test
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-04-06 12:58:48 -07:00
Adam Williamson 4fb87a077e Fix KDE media writer launch test
Typing 'mediawriter' doesn't work on Rawhide any more. 'media
writer' (with a space) works OK.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-04-06 11:23:57 -07:00
Adam Williamson cb2f9ecee9 KDE doesn't show welcome tour on live any more, drop handling
We actually get a softfail because we're expecting it; now it's
been fixed not to show up, drop the code that expects it.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-04-06 10:31:17 -07:00
Adam Williamson 85d28ce4ab characters: workaround text editor starting behind characters
We're constantly seeing this test fail on an odd problem where
text editor starts *behind* characters. To handle this, check
if we see text editor and if not, hit alt-tab.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-04-06 09:24:29 -07:00
Adam Williamson d41ec1eb8a Calculator: drop the switch to basic mode
It always launches in basic mode anyway, and sometimes this key
press doesn't work right and leaves a stray 'b' in the entry
field, which messes things up when we get to the calculation
tests.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-04-04 09:14:14 -07:00
Adam Williamson 278b1e32b0 Make evince test handle #2183356 (wrong save target on flatpak)
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-03-30 16:25:08 -07:00
Adam Williamson 7b2c9d3e45 live_build: temporarily drop a newly-added group in KDE kickstart
This group was only added to comps today, so it's not in the
comps in the rawhide repo yet (will be after next compose). The
Koji repo doesn't have normal comps so it's not there either.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-03-30 11:20:51 -07:00
Adam Williamson 594457dff0 Contacts test: wait before maximizing
Try and make sure maximize actually works - wait for still screen
after hitting Done and before trying to maximize.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-03-30 09:28:40 -07:00
Adam Williamson 637e9e4cfe Characters app copy/paste test: be more defensive
There's a failure mode we hit quite often where, when we run
the text editor after copying the character, it pops up *behind*
the character page. So let's close the page first. When we click
the 'Copy Character' button a notification that the character was
copied is briefly displayed and if we hit esc while it's visible
we dismiss *that* not the character page, so hit esc twice to be
safe. If we miss dismissing the notification, the 'extra' press
is safe, it doesn't quit the app.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-03-30 09:25:47 -07:00
Adam Williamson 6ae2e05484 Be a bit more defensive when setting admin pw in zezere server
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-03-29 15:45:17 -07:00
Adam Williamson 9251ac21fa Disable audit messages on ostree rebase tests on aarch64
Otherwise they tend to get into the output of the status command
and mess up the test.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-03-29 14:29:52 -07:00
Lukáš Růžička 0075780ac5 Create test suite for Fonts. 2023-03-28 15:58:16 -07:00
Adam Williamson 7603b38dec Update _check_install_source for a change to NFS handling
A change to how anaconda handles NFS repos changed the log
messages we get when we use one. We may need further changes for
using NFS as a base repo when this change hits Rawhide nightly.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-03-28 10:26:34 -07:00
Adam Williamson a6e5700854 Unset 'last time notification shown' setting for KDE (#2178311)
It looks like the desktop_notifications postinstall test on KDE
on F38 is failing currently because the notification is being
shown during the install_default_upload test that precedes it,
so KDE decides not to show it again yet. So, unset the setting
that stores the timestamp of the last time the notification was
shown. This is similar to a thing we already do for GNOME above.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-03-27 17:35:22 -07:00
Adam Williamson 5c62a909c8 Weather: handle app UI showing briefly before the access prompt
Exactly the same as the change for Maps from a few days back,
for the same reason.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-03-24 11:42:19 -07:00
Adam Williamson 8b19c9b3df rpmostree_rebase: use --bypass-driver
This is needed to force the rebase on current CoreOS (because it
has zincati registered by default). It should be harmless in all
other cases.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-03-22 22:59:21 -07:00
Adam Williamson 5572a73f61 Use pandoc-common instead of python3-kickstart for package tests
Reasoning:

1. pandoc is not in critpath so will not itself be tested
2. pandoc is widely used and actively maintained
3. package is noarch
4. package has minimal deps

Hopefully this will work for everything. For some reason, the
"use python3-blivet for pykickstart tests" fails mysteriously
sometimes, see e.g.
https://openqa.stg.fedoraproject.org/tests/2672282

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-03-18 09:44:02 -07:00
Adam Williamson 38c3693684 Revert "Fix desktop_update_graphical tests for pykickstart updates"
This reverts commit 2e5fa93415.
Let's try using one non-critpath package for all these tests
instead.
2023-03-18 09:39:19 -07:00
Adam Williamson bac28124a0 _ostree_build: use koji-rawhide.repo in lorax command
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-03-18 08:37:01 -07:00
Adam Williamson 96118b4b60 Maps: handle app UI showing briefly before the access prompt
See e.g. https://openqa.fedoraproject.org/tests/1829593
sometimes we see the app UI briefly before the access prompt
appears. Handle that case by waiting a few seconds and doing
the match again.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-03-17 09:19:35 -07:00
Adam Williamson 2e5fa93415 Fix desktop_update_graphical tests for pykickstart updates
Somehow, the dummy package being python3-kickstart causes the
graphical update tests (only) to fail for pykickstart updates
(that's the source package of python3-kickstart). The CLI and
Cockpit update tests are fine with this and pass.

To workaround this, use python3-blivet as the dummy package for
the graphical update tests when testing an update that contains
python3-kickstart. I've updated the test repo to contain both
dummy packages.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-03-14 14:14:25 -07:00
Lukas Ruzicka 0d4f3f4542 Fix a failing needle for Maps. 2023-03-13 13:39:22 +01:00
Adam Williamson 989bfd22db zezere: change secure cookie setting to 'no'
We don't use https in this test (no valid cert), so this has to
be 'no'.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-03-03 19:05:26 -08:00
Adam Williamson 750f26b43b graphical_input: also type hotkey on the *second* attempt
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-03-03 10:28:43 -08:00
Adam Williamson 282ecb6c32 Revert "zezere: tweak for web UI change"
This reverts commit 2fecb70468.
Sadly, clicking on the right menu entry...doesn't work. Let's
try going back to the old way, but add an 'enter' press once
the entry we want is selected.
2023-03-02 15:02:14 -08:00
Adam Williamson 2fecb70468 zezere: tweak for web UI change
The runrequest list is just a normal dropdown menu now, so we
can just click the thing we want.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-03-02 14:39:00 -08:00
Adam Williamson 20620236b3 Clean up minimal browser environment setup
Move the xauth disablement and the disabling of studies into
_setup_browser, instead of repeating it in a couple of other
places (but *not* doing it in the zezere test, where we should
be doing it). Drop some explicit package installs that should
no longer be needed as Firefox and/or X.org now depend on those
things. Install the current default fonts (Noto), not the old
ones (DejaVu).

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-03-02 13:51:08 -08:00
Adam Williamson 0b2053b842 zezere: add expected 'secure_cookie' value to config file
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-03-02 12:53:33 -08:00
Adam Williamson eadf23a516 Add an ugly workaround for FEDORA-2023-f6afa6f9e5 rebase issue
There's a weird issue with the rpmostree_rebase test for this
update:
https://bodhi.fedoraproject.org/updates/FEDORA-2023-f6afa6f9e5#comment-2919613
it doesn't reproduce locally (I can type fine after doing the
same things the test does up to the rollback) and I can't think
of any possible cause, and I don't want to hold the update up.
So we're just gonna work around it and hope this doesn't start
happening to all F38 update tests after this goes stable. If it
does, we'll have to do the workaround for all of them.

The workaround is just to rollback and reboot 'blindly', instead
of checking the rollback command works. The drawback is that if
the rollback command fails we'll wait 7.5 minutes before giving
up on it, and it'll be a bit less clear exactly what happened.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-03-02 10:16:52 -08:00
Adam Williamson a984674e9b add an 'esc' to krfb startstop test to deal with a dialog
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-03-01 14:10:00 -08:00
Adam Williamson 6aa52fc3cb Drop similarity level on a wait_still_screen with a cursor
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-02-23 15:06:07 -08:00
Adam Williamson 8e68c385d3 Just *always* expect a welcome tour now
Plasma 5.27.1 is going all the way back to F36 (in
FEDORA-2023-d7dcc38129), so we'll have a welcome tour on both
desktops we actually test on, on all supported releases. So we
can just drop the desktop conditional entirely here now.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-02-23 09:41:46 -08:00
Adam Williamson 9a0ef37a25 Revert "Update live install tests: handle awkward install ordering"
This reverts commit 56936df7a5. It
was a lovely idea, but forgot that the 'matching update version'
check doesn't actually use the allpkgs.txt list...
2023-02-22 15:55:24 -08:00
Adam Williamson 56936df7a5 Update live install tests: handle awkward install ordering
There's this awkward path for the live image install tests on
updates. We run the 'are the correct versions of all the packages
installed' check on these tests to ensure the right versions
actually made it onto the live image. So we don't run
`dnf -y update` at the end of repo_setup_updates on that path,
because if we did that, even if the packages on the live image
were old, we'd update them there and hide the problem.

However, this causes a bit of an ordering issue, because in
order to set up the advisory repo, we need to install a few
packages. What if the update under test includes one of those
packages, or a dependency that wasn't already installed? In
that case, we wind up with the older stable version of the
package (because obviously we can't install the newer version
from the advisory repo *before we've set up the advisory repo*),
don't update it later, and so the 'correct version' check at
the end of the test fails. See:
https://openqa.fedoraproject.org/tests/1778707 for a case of
this happening with a python-cryptography update.

Up till now I was trying to handle this by just updating the
specific packages we install, but that doesn't account for
*dependencies* of them. I looked down the path of trying to
generate a list of all those dependencies and update all of
them but it looks a bit mad. So instead let's try this. On that
specific path, we'll generate the "all installed packages" list
*before* we run repo_setup, so it just doesn't include anything
that gets installed during repo_setup. The implementation is a
bit icky but not too horrible.

We *could* just *always* generate the all installed packages
list earlier, but then that would mean we *wouldn't* catch dep
issues in this kind of package on the other test paths, whereas
currently we do. I don't want to lose that.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-02-22 14:54:18 -08:00
Adam Williamson 66a899d797 Expect KDE welcome screen on F37 too
5.27.1 is going to F37, and adds it. In the short term this
will waste a minute and a half and cause soft fails on all other
F37 updates until the update that adds this goes stable, but
I don't really feel like working around this, let's just live
with it till the update goes stable.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-02-22 14:11:07 -08:00
Adam Williamson 822af3d025 graphical_input: try typing 'hotkey'
OK, neither 'input' nor 'keyboard' actually gives us the Keyboard
pane, they both give results for uninstalled apps from Software
:(. 'hotkey' (which is one of the keywords in the .desktop file)
does seem to work, for now at least, let's try that.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-02-22 13:57:33 -08:00
Adam Williamson b1dfcfdd3d Contacts: handle menu changes in 44
Contacts now has two burger menus, which is awkward. We need
specific needles to identify each, we can't rely on the generic
needle any more as it won't always open the right menu. We also
need to still work with the old UI for the flatpak.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-02-22 12:38:02 -08:00
Adam Williamson a99178732a desktop_notifications: handle KDE welcome screen on lives
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-02-21 18:28:28 -08:00
Adam Williamson b9500536cc Make the changed handle_welcome_screen conditional clearer
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-02-21 18:22:59 -08:00
Adam Williamson ddb3f44c57 Extend handle_welcome_screen to cover new KDE welcome tour
KDE has a welcome tour now, on F38 and Rawhide at least. Let's
"handle" it with extreme prejudice...

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-02-21 18:16:13 -08:00
Adam Williamson 13d935eb85 graphical_input: go back to typing 'keyboard'
On GNOME 44, typing 'input' is now giving us the Software page
for PulseAudio Volume Control, for some reason. Let's try typing
'keyboard' again and hope that works again now...

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-02-18 14:30:41 -08:00
Adam Williamson 5e2a91192f desktop_login: also give assert_shutdown longer
Can't really work a soft fail into this one.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-02-18 12:27:52 -08:00
Adam Williamson 3213bb9043 desktop_login: give logout longer, but soft fail
Logout seems to be taking a long time in Rawhide currently. Give
it longer to run, but soft fail. I'll add a bug link once I've
investigated and filed one.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-02-18 11:47:07 -08:00
Adam Williamson 5f8876691f Give _ostree_build lorax command a bit longer
It seems to be timing out a lot.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-02-16 20:36:14 -08:00
Adam Williamson 05f13a002d Revert "rpmostree_rebase: avoid rebasing Silverblue to 38 for now"
This reverts commit d0d37e6aca.
Turns out rebase still fails even with 37 as the target.
2023-02-16 20:36:03 -08:00
Adam Williamson d0d37e6aca rpmostree_rebase: avoid rebasing Silverblue to 38 for now
It seems to be busted:
https://github.com/fedora-silverblue/issue-tracker/issues/420
so let's just have anything that would rebase to SB 38 rebase to
SB 37 instead for now.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-02-16 12:04:37 -08:00
Adam Williamson 0a9abca4a6 _ostree_build: drop a stray comment
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-02-16 11:52:32 -08:00
Adam Williamson ca6ca2e490 Handle a persistent overlay warning on live boot (#2170544)
In today's F38 and Rawhide, changes to the persistent overlay
stuff result in a boot warning you have to spam through. Let's
handle this as a soft fail so we don't have floods of failed
tests till it's fixed.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-02-16 09:12:36 -08:00
Adam Williamson 4db301bba6 Use systemctl start not systemctl isolate in notifications test
Per https://github.com/systemd/systemd/issues/26364#issuecomment-1424900066
this resolves the problem with systemctl isolate not working on
current Rawhide.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-02-09 14:56:33 -08:00
Adam Williamson f4b154253c desktop_login: don't hit esc on lock screen
Tested that this is not necessary on KDE or GNOME, and on current
KDE it actually seems to break stuff. It's better to just start
typing the password.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-02-07 11:43:16 -08:00
Adam Williamson 8bcabe25a8 Give some long-running package install operations a bit longer
These have timed out quite often recently.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-02-03 09:04:48 -08:00
Adam Williamson a881d227fb apps_startstop: tweak print theme editor launch to avoid #2165657
Typing a partial binary name no longer seems to work. Typing the
full binary name works, but differently from before; seems best
to do a partial entry name search so we launch the actual entry,
not the executable directly.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-01-30 09:31:28 -08:00
Adam Williamson f2e87cd128 desktop_browser: handle addon add button not always being visible
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-01-26 22:58:14 -08:00
Adam Williamson 0bda4ad073 rpmostree_overlay: try to cancel running operations
I've seen a few cases of this test failing because there was
some running operation when it tries to do `rpm-ostree install`.
I think this is GNOME Software checking for updates or something,
I've seen it on my own Silverblue install too. Let's just throw
some `rpm-ostree cancel`s at it and hope that helps.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-01-26 17:02:49 -08:00
Adam Williamson f3c8b570d1 More fixes to anaconda additional repository flow
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-01-23 15:32:07 -08:00
Adam Williamson f03743a01d Update anaconda additional repository flow
"Additional repositories" is now hidden behind a dropdown we
have to open first. This will make the test fail on anything
older than Fedora-Rawhide-20230121.n.0, but I don't think we
run this test anywhere that would be a problem.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-01-23 14:38:12 -08:00
Lukas Ruzicka 7ad809339f Add new test for Characters.
This PR adds a small test suite to test the Characters applications.
It displays several different groups of characters and then tries
to copy one of the characters and place it into a text editor.
2023-01-19 17:53:03 -08:00
Adam Williamson a64cadb8fe Make the Software welcome->ignore change in apps_startstop too
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-01-11 09:16:31 -08:00
Adam Williamson 2a157bbd4e Fix up the Ignore button clicking
The dialog moves a bit.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-01-09 11:45:03 -08:00
Adam Williamson 2db1e57674 Check for 3rd-party popup instead of 'welcome' screen
GNOME Software no longer has a welcome screen in any current
Fedora (it was dropped between 35 and 36), but in Rawhide it now
has a popup that prompts you to enable third-party repos which
we need to get rid of, so just convert the welcome screen check
to handle that, and drop all the welcome screen needles.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-01-09 10:34:27 -08:00
Adam Williamson 8a36423314 remote_logging_server: sleep at the end
It seems ending the test right after we create the mutex can
cause the client not to catch it, sometimes. So let's sleep for
a few seconds after creating it to make sure it does.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-24 14:30:03 -08:00
Adam Williamson 1dfae9b44e ...and in the other file too.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-24 13:42:16 -08:00
Adam Williamson 21d14ac93d remote_logging: ugh, need to include utils too
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-24 13:31:58 -08:00
Adam Williamson 0a4d86e7bf remote_logging tests: do repo_setup
These tests weren't doing it, I guess it's just an oversight;
this is probably why they often fail on slow repos.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-24 09:57:22 -08:00
Adam Williamson fa3881e80e Revert "Use older grub for _support_server tftp to fix PXE (#2152763)"
This reverts commit 61d77ee108.
The bug looks to be fixed now, and the fix hit stable for F37,
so this should no longer be necessary.
2022-12-23 11:17:00 -08:00
Adam Williamson 2c1a0e8128 desktop_update_graphical: disable koji-rawhide on update tests
...or else we get stuff like
https://openqa.fedoraproject.org/tests/1649309#step/desktop_update_graphical/40

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-16 23:23:26 -08:00
Adam Williamson 6daf9c36a0 Make rpm-ostree tests generic, run on Silverblue and CoreOS
This makes the two rpm-ostree tests written for IoT - overlaying
and rebasing - work across all rpm-ostree-based flavors we
currently test (IoT, CoreOS and Silverblue) and runs them on
all those flavors.

This requires some other changes. For the Workstation ostree
installer update tests, we have install_default_update_ostree
upload a disk image and run these tests on that image. That means
install_default_update_ostree cannot use a scratch disk (as if
we boot it with two disks but only upload one, the subsequent
tests fail to boot, looking for the missing second disk), but its
specified disk size should be large enough for all updates.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-16 08:44:43 -08:00
Adam Williamson 3754ab3d8a Drop all handling of MODULAR
This was from years ago when we briefly did "modular composes".
That died and ain't coming back.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-15 11:10:40 -08:00
Adam Williamson a566f01a79 _boot_to_anaconda: extend the sleep before bootloader re-check
What's supposed to happen here is the `do_bootloader` invocation
a few lines back boots to the installer, then here, we wait for
the install to complete and the system to reboot, and match the
bootloader again. However, on PXE installs, the bootloader screen
can hang around for quite a long time here, and if it does, we
can match it again before the installer starts up, and move on
too early. Hence the sleep.

It seems on current Rawhide 20 seconds isn't long enough - we're
still matching the installer bootloader after the sleep, see
e.g. https://openqa.stg.fedoraproject.org/tests/2431660#step/_boot_to_anaconda/3
This is causing the test to almost always fail (it'll only pass
if the install+reboot takes less than five minutes). Let's bump
it to 60 seconds and hope that's long enough.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-14 12:29:00 -08:00
Adam Williamson 2023172c24 Revert "Try and workaround IoT rebase problems with F37 read-only change"
This reverts commit 093da03139.
As the comment says, this should be safe now F37 is stable.
2022-12-13 14:34:34 -08:00
Adam Williamson 5b3e90e032 _software_selection: simplify a grep (F35 is EOL)
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-13 14:34:34 -08:00
Adam Williamson 0b8d1a58e0 desktop_printing: drop gedit, F35 is EOL
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-13 14:34:34 -08:00
Adam Williamson 5acd4ea80b Update notes about clicking root password screen in anaconda
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-13 14:34:34 -08:00
Adam Williamson c6fe9743bd cockpit_autoupdate: update note on the 30s sleep workaround
Sadly, dropping this sleep caused the test to start failing
again at least on F36, so we still need it - update the note.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-13 14:34:05 -08:00
Adam Williamson d28f520dbf os_release: drop a now-unneeded > 34 conditional
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-13 12:45:20 -08:00
Adam Williamson 079eecf23c Update notes about power menus in desktop_login
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-13 12:45:20 -08:00
Adam Williamson a664c10817 _check_install_source: drop branches for EOL releases
Thankfully this all calmed down a bit so we can simplify it a
lot. Clean things up a bit at the same time; escaping nested
single quotes is a lot clearer than concatening blocks with
different quote marks.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-13 12:45:20 -08:00
Adam Williamson ea8e1f950d Drop #2120433 workaround
The bug seems to have gone away, at least I don't see that this
soft failure has been hit much for the last two months.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-13 12:45:20 -08:00
Adam Williamson 2226cea183 Update note as to why we use tty1 in desktop_notifications
It's been on 1 so long now I kinda don't want to change it to 3
or 4 or anything. That might break something. As long as it's not
causing any trouble let's just leave it on 1.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-13 12:45:20 -08:00
Adam Williamson fecf4ea595 Simplify condition for disabling dnssec on FreeIPA upgrade test
We don't need the release number part any more, it's always
more than 34.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-13 12:45:20 -08:00
Adam Williamson 61d77ee108 Use older grub for _support_server tftp to fix PXE (#2152763)
PXE install on UEFI (incl. aarch64) is failing at present, this
seems to be due to a grub bug:
https://bugzilla.redhat.com/show_bug.cgi?id=2152763
we're really intending to test the client side here, not the
server end, so let's work around this problem on the server end
by installing a grub2 scratch build that's the package from just
before the bad change, but with the release and epoch bumped,
from a side repo.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-12 17:51:52 -08:00
Adam Williamson ffbb618d03 Simplify _graphical_wait_login welcome screen logic
This turns out to be overcomplicated. We don't need the special
handling for updates any more, because a few months after we
implemented it, we had to make sure the affected update tests had
an empty START_AFTER_TEST anyway, or else openQA would refuse to
schedule them. So we can just rely on the START_AFTER_TEST
condition for those now. We also don't need the additional
INSTALL_NO_USER condition; the only case where it's actually used
is for install_arm_image_deployment_upload on Workstation, and
that test does not have START_AFTER_TEST set, so the other
condition catches it for welcome screen handling purposes. There
is no need to nest the IMAGE_DEPLOY conditional inside a check
for the desktop and the INSTALL_NO_USER var either; we don't
test any other desktop on ARM, and the IMAGE_DEPLOY var is only
set for that one install_arm_image_deployment_upload test.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-12 08:48:53 -08:00
Adam Williamson f915297475 Use buildroot repo for Rawhide image builds also
We recently started using the buildroot repo for Rawhide update
tests, but weren't including it in the image build tests. This
should include it in all the image build tests.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-12 08:42:18 -08:00
Adam Williamson f752b4c00a Don't snapshot after wait_login tests (usually)
We currently snapshot after every run of _console_wait_login or
_graphical_wait_login, which means we snapshot *twice* on most
update tests as those modules get run twice. However, we almost
never use those snapshots. Snapshotting takes quite some time,
and hits the disk pretty hard, so we should avoid it unless it
is really needed.

We only have a few modules that are not fatal (and so might use
the snapshots), and most of those don't run after one of these
tests, or run after a later module that's also a milestone. Best
I can tell, only two test suites really need to use a snapshot
from a login test: server_cockpit_updates and modularity_tests.
To handle these and potential future cases, we'll add a new
module that does nothing, but is marked 'milestone', so it will
take a snapshot, and load that test after the login test if the
var LOGIN_SNAPSHOT is set, and set that var for those two suites.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-08 09:59:23 -08:00
Adam Williamson a13cd7a08a Add `--squashfs-only` to lorax args
We started using this in real composes a year or two back, so
openQA should do the same. It drops the nesting of an ext4 fs
image inside a squashfs image, just using a single squashfs
image instead. This results in smaller images - missing this
is why the images built by openQA were coming out larger than
the real ones.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-07 14:03:19 -08:00
Adam Williamson 4d3673f811 Simply abrt KDE stuff even more
...wait, this is what 'workaround' needles are for.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-07 11:30:08 -08:00
Adam Williamson 9c6d5459e6 Simplify the KDE abrt logic
This does the same, just cleaner.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-07 11:26:27 -08:00
Lukáš Růžička 179764d49c Fix tests for Maps.
* Scarborough provided quite a messy map that resulted
in frequent needle failure. Changing the location
for something better to make it more reliable.
* The zoom test could have failed with a low resolution
image. Adding some timeout to the needle give more
time to load the proper image.
2022-12-07 11:52:11 +01:00
Lukáš Růžička 0cb57e7511 Add timeout 30 secs to make less fragile.
The check_screen function checks for the existing tag
but it only waits 1 second by default. In this time,
Abrt will not even start so we need to prolong
the check_screen timeout to make sure the application
has started (or at least give it enough time to try).
2022-12-07 10:00:33 +01:00
Adam Williamson 98653847d3 Add missing single quotes
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-06 14:01:51 -08:00
Adam Williamson 7536b6ce10 ostree_build: tee and timestamp the `rpm-ostree` output
Instead of just redirecting it to a log file, let's tee it, so
simple errors can be read off a screenshot without bothering to
download the file. Also, let's timestamp it (via `ts` from
moreutils) so we can see which bits of it take a long time...

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-06 13:38:57 -08:00
Lukas Ruzicka 1605706fb3 Set timeout to 60 on startstop needles. 2022-12-05 15:16:16 +01:00
Lukas Ruzicka f29572ba76 Abrt should not fail on found issues but softfail on startup tests. 2022-12-05 14:30:03 +01:00
Lukas Ruzicka 7daa4b3dd0 Give more time to the needle to avoid failing on delayed start. 2022-12-05 14:03:48 +01:00
Adam Williamson 1ae7065961 ostree: use scratch disk as target for rpm-ostree compose
Seems like we might be running out of space on this step on F35.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-03 16:16:39 -08:00
Adam Williamson c2fb8fa83b Use 'main' branch for ostree-parse-pungi.py checkout
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-03 12:29:23 -08:00
Adam Williamson 37412b95a8 ostree_build: bump timeout on ISO build
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-03 11:10:37 -08:00
Adam Williamson 03b6663339 Add tests to build a Silverblue installer image and install it
This is like the existing tests that build network install and
live images then install them, only for Silverblue. First we
build an ostree, using the standard configuration for the release
and subvariant but with the 'advisory' and 'workarounds' repos
included, so it will contain current stable packages plus the
packages from the update and any workarounds. Then we build an
ostree installer image with the ostree embedded, again including
advisory and workarounds repos in the installer build config so
packages from them will be included in the installer environment.
The image is uploaded, which completes the _ostree_build test.
Then an install_default_update_ostree test runs, which does a
standard install and boot from the installer image.

We do make a change that affects other tests, too. We now run
_advisory_post on live image install tests, as well as this new
ostree install image install test. It was skipped before because
of an exception that's really only needed for the netinst image
install test. In that test, packages from the update won't be
included in the installed system, so we can't run _advisory_post
on it. But for ostree and live image build/install tests, the
installed system *should* include packages from the update, so
we should check and make sure that it does.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-11-30 13:17:28 -08:00
Adam Williamson 137f2a2176 nautilus: check app started *before* trying to fullscreen it
Seems to make a lot more sense this way around.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-11-29 09:41:47 -08:00
Adam Williamson 9d8a35ed39 cockpit: don't try and get admin privs when re-logging in
There's one point in the tests where we may log into cockpit for
the second time in one run (it depends how a package update
process goes). When this happens, we don't get prompted again
for admin access, so we need to *not* expect that.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-11-25 11:24:52 -08:00
Lukas Ruzicka d4717ff090 Create test suite for Maps. 2022-11-21 18:17:11 +00:00
Adam Williamson 3c13f02679 Revert "_advisory_update: stop the graphical desktop at the start"
This reverts commit 3208d15725 and
the two follow-ups. I'm hoping
https://bugzilla.redhat.com/show_bug.cgi?id=2133829 is now
resolved; this was intended to help with that (though I'm not
sure it ever really did), and so we can hopefully ditch it, which
simplifies this code.
2022-11-18 12:23:33 -08:00
Adam Williamson 82588f4a52 Revert GTK focus bug workarounds
This reverts the last few commits which worked around a focus bug
in GTK. This bug is now (I hope) fixed, so I'm dropping the
workarounds so the tests will confirm whether it's fixed.
2022-11-02 11:03:02 -07:00
Lukas Ruzicka 3e096234d9 Move cursor out of the way in the text field. 2022-11-02 08:42:14 +01:00
Lukas Ruzicka 8dfcbfee48 In Gnome-Text-Editor perform an extra click to move the focus inside the text area. 2022-11-01 18:03:29 +01:00
Lukas Ruzicka c394603058 Make an extra click into the the list view to force correct focus. 2022-11-01 17:35:23 +01:00
Lukas Ruzicka aa98b12c5c Make install times longer to prevent failures on slow VMs 2022-10-31 15:56:04 +01:00
Lukas Ruzicka ef5969b600 Wait until screen to make sure the exit shortcut is not pressed when not ready. 2022-10-31 15:56:04 +01:00
Adam Williamson 69dc252da9 tidy lukas' change to the arabic fonts test
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-10-24 14:56:30 -07:00
Lukas Ruzicka 3105e88626 Softfail the check_default_fonts to prevent breaking the Install Arabic test. 2022-10-24 12:56:15 +02:00
Adam Williamson 734c75fb23 _advisory_update: add a wait_still_screen too...
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-10-21 09:04:32 -07:00
Adam Williamson 9c8fb47484 _advisory_update: ensure we're back on tty3
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-10-21 08:55:27 -07:00
Adam Williamson 3208d15725 _advisory_update: stop the graphical desktop at the start
We have a big problem with Rawhide KDE update tests getting OOM
killed during this phase. Stopping the desktop before we install
updates should save some RAM and help avoid this.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-10-20 18:10:23 -07:00
Lukáš Růžička 5ea921b17b Create tests for Gnome Contacts. 2022-10-18 14:22:52 -07:00
Adam Williamson dd6b502b04 server_cockpit_basic: more defensive waiting
Boy this seems slow in Rawhide currently. This has the effect
of being more defensive around the services page load.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-10-14 10:20:15 +02:00
Adam Williamson 25ed1e236d weather: settle before snapshotting in aaa_setup
We've seen some failures of the weather test at the start of
weather_report, where the test expects to be at the hourly view,
and instead it seems to be at a sort of broken state:
https://openqa.fedoraproject.org/tests/1505080#step/weather_report/3
I'm guessing this may be because currently aaa_setup clicks the
city name then is immediately complete, so it will immediately
snapshot. I guess this can result in things being stuck in a kind
of intermediate state on snapshot restore. So, to try and avoid
this, let's assert that we reach the hourly view after clicking
the city name, then wait_still_screen for a few seconds to make
sure things are settled down, before we complete and snapshot.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-10-13 10:35:38 +02:00
Adam Williamson 20ef09d4f4 Protect against long load times in Cockpit
We seem to be hitting very long loads on the Services and Logs
pages of Cockpit in recent Rawhide testing especially. As I don't
have time to deeply debug this at the moment, let's just give it
longer (but make it a soft failure when it takes longer than
expected).

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-10-12 10:21:34 +02:00
Lukas Ruzicka 5d3fc244eb Create the test for system monitor. 2022-10-10 15:14:21 +02:00
Adam Williamson baedbd22aa Run tidy to fix some syntax errors that creeped in recently
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-10-10 15:04:06 +02:00
Lukas Ruzicka 5038dcaab0 Fix the logic in Kmail startstop test
Sometimes the windows are displayed in the reversed order, which
prevents the checks to find the needles and the test fail
even if it should pass. This change should address this case.
2022-10-06 09:51:16 +02:00
Adam Williamson 3a96ef8501 kmouth: also give the first run wizard longer to appear
It seems to consistently take a bit more than 30 seconds.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-09-29 13:17:29 -07:00
Adam Williamson 5592e2ac93 desktop_login: handle backgrounds in WebP format
...which we just started doing.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-09-28 08:41:45 -07:00
Adam Williamson 7675e99fcc Make internal state marker variables upper-case
We use variables to track test state across modules, sometimes.
As this is all internal to the test logic I didn't bother always
making these variables upper-case, but os-autoinst now treats
lower-case variables as a fatal error, so we have to change.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-09-27 23:18:42 -07:00
Lukas Ruzicka ba0062e5be Create a test case for Archiver. 2022-09-22 08:59:07 +02:00
Adam Williamson 093da03139 Try and workaround IoT rebase problems with F37 read-only change
The change to read-only sysroot for IoT in F37 causes problems
with this rebase test. It's not supported to rebase from an RO
release (37 or 38) to a non-RO release (36). So we need to make
sure we don't try and do that. This uses some quick hack logic,
but it should be OK and sufficiently specific not to break
anything even if we forget to remove it in future.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-09-20 15:48:22 -07:00
Adam Williamson 2be9d203f3 Disable dnssec again for FreeIPA upgrade tests
It seems we still have trouble with this turned on :( About 60%
of tests fail with the client unable to resolve names.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-09-20 13:58:48 -07:00
Lukas Ruzicka 4c03c0d814 Fix the Silverblue failure on new_file test. 2022-09-20 17:25:54 +02:00
Adam Williamson 49dac8d872 Re-enable dnssec for all FreeIPA tests
The cluster of bugs for F37/Rawhide should all be resolved now,
and I'm hoping the old upgrade bug is no longer relevant.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-09-19 12:28:17 -07:00
Adam Williamson 2b79d59379 Disable updates-testing during upgrade_preinstall
This issue appeared when we started testing Rawhide updates, but
I only noticed it today. When testing Rawhide updates after
Branch point, the upgrade tests upgrade from Branched to Rawhide.
On Branched, updates-testing is enabled by default. We only
disable it when we reach `upgrade_run`, but by that point we've
already done a `dnf -y update` in `upgrade_preinstall` and
potentially installed other packages in steps between
`upgrade_preinstall` and `upgrade_run`. That can cause problems,
like today all FreeIPA upgrade tests on Rawhide are failing
because there's a newer freeipa in updates-testing for F37 than
is in the current Rawhide compose.

Solve this by disabling updates-testing before we do the update
in `upgrade_preinstall`. To avoid excessive code duplication,
factor out the repo disabling code.

We'll do this twice on upgrade tests now, but it shouldn't be a
problem.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-09-15 10:18:26 -07:00