A samba update was pushed for F37 without rebuilds of sssd and
freeipa (which needed to be rebuilt against it). Tests of any
of those updates on its own will fail, so including them all as
workarounds so the tests for each should work. I'll make sure
they all get pushed stable.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
The file conflict between older webkit2gtk4.1-jsc and new
javascriptcoregtk4.1 is causing all Workstation update tests to
fail on all Rawhide updates. This new version of webkitgtk adds
obsoletes to javascriptcoregtk4.1 which we hope should fix it.
Adding the x86_64 build directly as other arches aren't done
yet, and we only run the Workstation update tests on x86_64
anyway.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
openQA choked badly on
https://bodhi.fedoraproject.org/updates/FEDORA-2022-6256981a71
because it's, well, huge - 87 builds including texlive, which
has hundreds (thousands?) of subpackages. This exposed several
frailties against such updates.
First of all, we set NUMDISKS to at least 2 for *all* update
tests, which should mean they all stash the RPMs from the update
on a non-system disk and avoid problems with space exhaustion.
After that, just extend a few timeouts in particularly fragile
places, including one which is specific to texlive (as I don't
know of any other source package with so many subpackages).
Signed-off-by: Adam Williamson <awilliam@redhat.com>
F35 to F36 FreeIPA server upgrade test is failing because the
latest F36 package is lower-versioned than the latest F35
package, and FreeIPA's upgrade scripts are written to fail if
this is the case. The update bumps the F36 NVR to be higher
than the F35 one.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
bodhi-client should depend on it, but technically since we have
code that calls `koji` directly here, we should probably also
include it in our install anyway, so not marking this as a
workaround.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
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.
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>