Commit Graph

439 Commits

Author SHA1 Message Date
Lukáš Růžička 1f8b56e068 Change the way to download test data.
This PR changes the way to download the test data into the VM.
Although it does not use a disk image as suggested in one
of the review, it does not clone the entire repository, but
a simple tar.gz file that holds the data which will be
distributed into the directory structure.

This way, the amount of data needed to be downloaded dropped
from approximately 50MB to below 2MB.

Also, the existing test suites were adapted to this situation.
2022-07-04 09:34:04 +02:00
Adam Williamson a6eb9024cf do_bootloader: bootloader is always grub on F37+
Now we've ditched syslinux in Rawhide, we should just always
expect to see grub if release number is > 36.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-06-17 16:58:34 -07:00
Lukáš Růžička 7637238951 Add some extra steps for KDE to overcome BZ2097208. 2022-06-15 10:35:57 +02:00
Adam Williamson 4971de39e9 Tweak quit_firefox to handle hang on exit on ppc64le (#2094137)
It seems when we quit Firefox back to a VT on ppc64le, the system
hangs. Not sure why, but we can deal with it by rebooting the
system and logging back in as root if it happens. Also take the
opportunity to clean up the flow of quit_firefox so we always
check that we get back to a console then wait 5 seconds for the
console to settle, so all the tests that call it can stop doing
that.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-06-06 18:35:52 -07:00
Adam Williamson e1ed9960f3 Let _console_avc_crash wait a bit longer for console login
On Rawhide update tests we often don't seem to get to the login
prompt in 10 seconds, so tweak the code a bit to let us specify
a timeout in root_console, and use 30 seconds here.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-06-06 18:34:44 -07:00
Adam Williamson 4ee583ad43 Bump a console login timeout a little
After typing the username, on some Rawhide tests, it's taking
over 30 seconds for the password prompt to appear. This isn't
ideal but we don't want the test to fail on this. Give it up
to 45 seconds.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-06-01 09:04:34 -07:00
Adam Williamson 56b443176a tapnet: don't double-declare @forwards
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-05-26 14:49:57 -07:00
Adam Williamson 21e4ded350 Fix disable_firefox_studies for ostree installs
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-05-26 09:25:07 -07:00
Adam Williamson 919ade3152 Tweak the Firefox config override stuff again based on research
Wow, so the real way to do config overrides is, uh...obscure.
One file pointing to another file, both with mandatory comment
lines and one with a weird required value. Wat. Anyway, this
works in a VM. I still don't know why the policy for the first
run page isn't working as advertised.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-05-24 23:49:31 -07:00
Adam Williamson d236ea2cfb Fiddle with firefox welcome screen disabling again
The new way isn't working, so put the old way back but change it
to use user_pref instead of pref to see if that helps, and upload
the files for checking.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-05-24 23:20:23 -07:00
Adam Williamson 3f74203003 Fix missing quote in Firefox policy JSON
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-05-24 16:54:00 -07:00
Adam Williamson 1f7ac82ca1 Set script_run_die_on_timeout distri-wide
This is required for script_run invocations in current
os-autoinst to tell it what to do if script_run times out, rather
than failing or succeeding (this behaviour was always undefined).
Right now you just get a deprecation warning but at some point
not setting it will be fatal. This tells it to die if script_run
times out; 0 would mean "just keep going, even though the
terminal is probably still blocked waiting for the command to
return".

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-05-24 16:52:13 -07:00
Adam Williamson 1e8a82f0e1 Try different way to disable Firefox 'welcome pages' (mkaply)
Thanks to Mike Kaply in
https://bugzilla.mozilla.org/show_bug.cgi?id=1703903#c18 , this
should avoid Quick Suggest onboarding, "Total Cookie Protection"
onboarding, and future annoying things using the same mechanisms
without using the prefs mechanism or going after each one case
by case.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-05-24 08:28:31 -07:00
Adam Williamson f3e4750f6e Fix line wrapping in firefox config override
Missed a line break...

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-05-20 23:41:26 -07:00
Adam Williamson 7ee3a91ffc Try and disable yet another Firefox popup that breaks tests
See https://bugzilla.mozilla.org/show_bug.cgi?id=1703903#c9 and
comment #13 for this one.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-05-19 14:54:54 -07:00
Adam Williamson a5433c823d Quick fix for `get_host_dns` when resolv.conf points to resolved
The Fedora infra workers got changed so their resolv.conf doesn't
have the correct DNS server addresses in it any more, it just
has 127.0.0.53 (the systemd-resolved resolver address). We need
to query resolved to get the correct addresses.

This is quick and hacky; it doesn't accommodate anyone running
a worker host that *isn't* using resolved, and it doesn't handle
IPv6 server addresses correctly if any are present (in infra we
currently don't use any on the worker hosts). I'll try and find
time to refine it but need to deploy this for now to make the
tests pass again.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-05-18 18:05:26 -07:00
Adam Williamson 01c2962f41 Note when #1933118 workaround can be removed
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-05-13 17:07:14 -07:00
Adam Williamson a629020a9b post_fail_hook serial path: log the entire journal
When we're logging via the serial console when a test fails and
no network is available, we only log the journal from the current
boot. But we might well need to see messages from previous boots.
So let's just log the whole journal.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-05-11 16:13:52 -07:00
Adam Williamson 3db92ef976 Cockpit updates: wait a bit after hitting up key
Otherwise we race between the needle match and the screen scroll
update, and can click the wrong thing.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-05-04 17:02:05 -07:00
Adam Williamson 05af76265f Handle Firefox 100 disappearing scrollbars in Cockpit update test
The Cockpit update test relies on scrolling the Cockpit left bar
to find the Software Updates page, but in Firefox 100, the scroll
bars disappear shortly after the last time you moved the mouse.
To deal with this, instead of looking for a scroll bar to scroll,
we'll click the search box in the left bar and hit 'up' to scroll
it to the bottom.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-05-03 13:15:02 -07:00
Adam Williamson c0255c5682 Revert a change accidentally included in previous commit
So it can be re-applied separately with correct message.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-05-03 13:14:00 -07:00
Adam Williamson 954b6f90bc Update variant anaconda layout needles for F36 RCs
We get these variant needles with the keyboard icon and layout
name at slightly different relative vertical positions every
time we do a Final RC. I think the layout is affected by the
pre-release warning text no longer being present. Usually each
cycle something changes with the icon or with font rendering,
so the needles have to be updated, as in this case.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-05-03 13:10:09 -07:00
Adam Williamson 94520bb7a8 Drop similarity_level on type_safely
I meant to include this in the earlier commit that does the same
for type_very_safely, but forgot.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-03-16 11:14:50 -07:00
Adam Williamson 7bf3bd8689 Drop similarity levels on type(_very)_safely, solidify_wallpaper
I noticed today that we're timing out all the time on these
wait_still_screens in gnome-terminal, because it uses a big
flashing cursor and the similarity between "cursor there" and
"cursor not there" is less than 45 or 42 (it seems to be 38.x).
So let's drop these levels to 38, hopefully that's not too low.
There are probably more places where this is an issue, I'll
change them as I notice them.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-03-14 16:32:29 -07:00
Adam Williamson ad1d656124 Drop F36 kwin workaround, should not be needed any more
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-03-01 18:31:37 -08:00
Adam Williamson 8fab101745 Use lower similarity_level for some terminal wait_still_screens
We can't use the default similarity_level for wait_still_screen
when there's a flashing cursor - flashing cursor will always
cause the similarity level to be too low and the wait will just
time out at 30 seconds. Cut it to 42.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-03-01 10:31:06 -08:00
Adam Williamson abd1d1a698 check_desktop: handle GNOME showing inactive button briefly
check_desktop tries to catch when the overview is open and close
it. But with GNOME 42, it seems the inactive "Activities" button
is shown briefly on login before GNOME opens the overview. If
check_desktop catches that, it will think the overview isn't
open and it doesn't need to do anything. So if we match on first
cycle through the loop, let's wait_still_screen then match again.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-03-01 10:24:48 -08:00
Adam Williamson c5e6d80684 Fix escaping in the caret workaround
So these kind of things go through perl *and* bash string
interpretation and the escaping can get pretty wacky. Turns out
we need *eight* slashes here to get four through to bash (which
we need to deal with *sed*'s escaping rules), and it only works
in single quotes for some reason, not double quotes.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-02-25 14:05:10 -08:00
Adam Williamson 371cb1c6eb Work around RPM caret bug when checking advisory packages
There's a bug in rpm where doing `rpm -q [NVRA]` doesn't work
if the NVRA contains a caret. To make it work you have to add
a literal slash character before the caret character, so we add
a sed command to do that, when we're checking whether packages
from the update actually got installed.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-02-25 13:07:46 -08:00
Adam Williamson 1417f1023e Add kwin scratch build to fix RHBZ #2047503 as an F36 workaround
Scratch build because we don't have a single-build update with
the fix, it's likely gonna be included in the 5.24.2 megaupdate.
I don't want to use that whole thing as a workaround, so I did
a 5.24.1 scratch build with the fix instead.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-02-23 13:09:22 -08:00
Adam Williamson 815fc3a758 Drop workarounds that already went stable
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-02-23 13:08:13 -08:00
Adam Williamson c33b137e88 Tweak desktop_vt tty detector a bit
The intent is that if the ps check finds nothing we'll use the
loginctl output, but that doesn't work because script_output
doesn't return the output if the script fails. There's an arg
you can pass to make it do so, but let's just make it always
succeed instead, by adding a ||: to the second grep like we have
for the first.

Also, I noticed this problem because the ps check started not
working on F36 KDE because none of the processes we check for
are shown as running on a tty, so let's add one more that *is*
shown as running on a tty...

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-02-22 16:54:03 -08:00
Adam Williamson 628c4a5d8f Try and disable Firefox "quick suggest onboarding" thing
Tests that use Firefox started failing recently because Firefox
grew yet another stupid pop-up thing that *might* show on start
up, this appears to be trying to get you to sign up for a
feature called "quick suggest". After half an hour trawling the
relevant code, this is my best guess as to how to turn it off.
Don't know for sure if it works because the thing doesn't pop
up every time, but it at least doesn't make things worse.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-02-07 12:06:23 -08:00
Adam Williamson c95bb4306d Remove duplicate needle in anaconda_help test
We check the same screen twice with two different needles.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-02-04 15:47:21 -08:00
Adam Williamson afbb62d514 Add F34 qt5-qtwayland update to workarounds to fix crashes
KDE tests are failing on all F34 updates ATM due to
https://bugzilla.redhat.com/show_bug.cgi?id=2049560 , add the
update to fix it. Also drop 33 from the workarounds hash as it's
EOL.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-02-03 16:31:34 -08:00
Adam Williamson ec83223ed1 Replace 389-ds-base workaround scratch build with official update
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-01-27 14:07:05 -08:00
Lukáš Růžička fe8306d2cd Implement distribution methods to replace the testapi defaults.
This PR adds implementations of distribution methods to make them
usable on Fedora. It adds the following methods

* ensure_installed (to install packages)
* become_root (to switch to root account)
* script_sudo (run script with sudo)
* assert_script_sudo (run and assert a sudo script)

It also adds a helper script to the utils.pm

* make_serial_writable

that makes the serial console writable for normal users
and so enables to run commands that check their progress
by sending messages to the serial console. Normally, they
fail, because the messages will not be written their, so
the checking mechanism will never see them.
2022-01-27 21:44:35 +00:00
Adam Williamson 9c225c5b40 Add 389-ds-base scratch build to fix RHBZ#2047323 to workarounds
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-01-27 12:49:30 -08:00
Adam Williamson a1e20088b6 Drop now-stable update from F35 workarounds list
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-01-27 12:48:54 -08:00
Adam Williamson 5296ff8114 Add selinux-policy-35.11-1.fc35 as workaround for bad .10 update
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-01-19 09:48:28 -08:00
Adam Williamson 8e414cc469 Handle anaconda giving users admin by default in Rawhide
As of today's Rawhide compose, user accounts added in Rawhide
have admin privs by default. For now we need to handle both
possibilities here (click the box if it's not clicked already);
after F35 EOL we can just drop all handling of that box.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-01-18 11:36:06 -08:00
Adam Williamson 3a9dfb6a58 Drop remaining workaround update (it went stable two months ago)
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-11-11 08:52:45 -08:00
Adam Williamson ff8603b96e Give KDE Desktop Settings window a few seconds to stabilize
Rawhide had a failure today where the dropdowns moved between
us matching and clicking, so we clicked the wrong one:
https://openqa.fedoraproject.org/tests/1005662

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-09-29 09:52:59 -07:00
Adam Williamson 9f15350a99 Allow g-i-s longer to start up (with a soft fail) (#1997310)
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-09-16 15:18:47 -07:00
Adam Williamson 9882ddcaa5 Robustify and tweak switch out of overview on GNOME boot
This fails sometimes just because we're too early, or something.
Also with GNOME Shell 41rc, alt-f1 no longer works to open and
close the overview. super *does* seem to work in KDE these days,
so let's switch from alt-f1 to super everywhere.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-09-07 11:05:55 -07:00
Adam Williamson 81c0a861d6 Add FEDORA-2021-9677463ae9 as a workaround for F35 update issues
This will hopefully resolve desktop_update_graphical failures on
Workstation.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-09-01 14:49:37 -07:00
Adam Williamson bc7deabd24 Drop workaround update that's stable now
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-08-27 17:19:13 -07:00
Adam Williamson f56b6c6c2a Add FEDORA-2021-41d8b36cd2 as workaround for RHBZ #1996901
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-08-24 15:53:21 -07:00
Adam Williamson 0b5746248f Drop some update workarounds that went stable already
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-08-24 15:52:27 -07:00
Adam Williamson 453053f4ed gnome-initial-setup: work around #1997310 (GOA screen missing)
There's a bug in current F35/Rawhide which causes the GOA screen
in g-i-s not to show up. Since failing on that will block a lot
of testing, let's handle it as a soft failure.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-08-24 15:14:22 -07:00