Commit graph

384 commits

Author SHA1 Message Date
Adam Williamson
8d9684dd80 Update tests: don't install git any more
We were using it to checkout a git version of python-fedora to
work around a bug, long ago, but we don't do that any more so
we don't need it.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-10-07 10:19:33 -07:00
Adam Williamson
aafe460f85 Update testing: drop all workarounds
They're all stable now.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-10-07 10:09:59 -07:00
Adam Williamson
1fdf7cd567 Handle update build not having any packages for target arch
openQA sometimes winds up testing an update that doesn't have
any packages for x86_64 (or aarch64). The most common case is
s390utils, which is on the critpath but only has packages for
s390x. I would ideally like to skip scheduling entirely if the
update has no packages for the arch we're scheduling on, but
sadly that involves using the Koji API which is XML-RPC and I
don't really want to deal with that again. This deals with it
at the test level instead, by checking the error message if
`koji download-build` fails and carrying on if it's the "no
packages for this arch" error. That means if the update has no
packages at all for our arch we're not really testing anything,
but that's better than a bunch of false failures, I guess.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-10-07 09:49:03 -07:00
Adam Williamson
fb1bc1dad8 Add mock 2.6 to workarounds, drop kernel for F31 and F32
Kernel updates for F31 and F32 went stable so they can come out.
mock 2.6 fixes the bug that occurs when /etc/resolv.conf is a
dangling symlink - this breaks the live_build test.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-09-17 16:40:53 -07:00
Adam Williamson
ee666d5f13 Add kernel 5.8.9 updates to workarounds (fix parted problems)
Kernel 5.8.8 broke the installer by changing return codes for
partition operations, these updates are listed as fixing it.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-09-14 18:48:08 -07:00
Adam Williamson
d86960166d drop FEDORA-2020-2bef864cab as a workaround (it went stable)
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-09-14 18:47:23 -07:00
Adam Williamson
0350977ba3 Update workarounds: drop stable one, add F33 FreeIPA upgrade one
The F32 FreeIPA update that changed the web UI has gone stable
now, so remove it. A pki-core update has just come out that fixes
F32 -> F33 FreeIPA server upgrade test: add this as a workaround
for F33 so that test stops failing on every update.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-09-08 14:13:29 -07:00
Adam Williamson
0999921fe3 Tweak detection of installed update packages
Previously we were relying on `rpm -q` always outputting the
right package last. We saw some test failures on recent kernel
updates, e.g. https://openqa.fedoraproject.org/tests/658768 ,
which indicate this isn't always the case; there the 'right'
package was second of three for kernel, third of three for
kernel-core and first of three for kernel-modules. So we need to
make it more robust. This uses an additional call:
`rpm -q $pkg --last | head -1` to find the most recent package,
if there are more than one; this should always be the right one,
I hope. Note we cannot just add `--last` to the `rpm -q --qf...`
call because the output when you do that is weird; you get the
output you'd get if you just called `rpm -q --last` first, and
*then* the query-formatted output afterwards (though with the
modified order as expected). There doesn't seem to be any way to
get only the latter.

I also tweaked the log uploading so we always upload the working
logs even when the test passes; it can't hurt anything and it is
sometimes useful to have them.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-09-08 14:03:23 -07:00
Adam Williamson
478b7eff9e Add initial CoreOS product and test templates
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-09-02 14:49:29 -07:00
Adam Williamson
170ef0733a Use nmcli for static network stuff, not ifcfg files
This should work even if the ifcfg plugin is not present (hi,
CoreOS) or 'predictable' (har) network names are on.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-09-02 14:49:29 -07:00
Adam Williamson
527cb63152 post_fail_hook: upload PostgreSQL init log if it exists
Why...why...WHY is this not in /var/log. Sheesh.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-08-25 16:18:32 -07:00
Adam Williamson
b9f6ecd72d Conditionalize FreeIPA UI change, add 4.8.9 update to workarounds
The FreeIPA UI change that the previous commit adapted to is in
4.8.9. That's stable for Rawhide and F33 already, but still in
testing for F32, and won't go to F31. So we need to make the
change conditional on release number, and we also add the update
to workarounds for F32 so we don't have to do something awkward
while we wait for it to go stable.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-08-21 14:00:42 -07:00
Adam Williamson
2713ce60dd Add a new not-really-a-Next-button needle for gnome-initial-setup
In g-i-s 3.37.91, the first screen has a 'Start Setup' button
rather than a 'Next' button. Easiest thing for us to do here is
just to add a new needle which has the 'next_button' tag even
though it's clearly not a 'Next' button, because then the code
still works :) So do that, but give the file a suggestive name
and explain the situation in a code comment.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-08-18 12:23:09 -07:00
Adam Williamson
8ee330b5d3 Add krb5 reversions for #1868482 to update workarounds
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-08-13 15:11:35 -07:00
Adam Williamson
0557a774ac Retry bodhi updates download a few times if it fails
It's failing about one in six tries currently, with Bodhi 5.5 on
the server end: https://github.com/fedora-infra/bodhi/issues/4105
this should work around that.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-08-13 15:03:36 -07:00
Adam Williamson
41ddac0951 Drop all update workarounds
The ones that were in there are stable now, plus downloading them
is hitting a bug in Bodhi and breaking tests.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-08-13 07:55:05 -07:00
Adam Williamson
aa41fe4e4e Automate QA:Testcase_Zezere_Ignition
This is a bit complex to automate, because we cannot really use
the production Zezere server (provision.fedoraproject.org) as
the test case shows, as we'd have to solve authentication and
we also don't really want to constantly keep registering new
hosts to it that are going to disappear and never be seen again.

So, instead we'll do it by setting up our *own* Zezere, and
provisioning our IoT system in that. We run two tests. The
'ignition' test is the actual IoT 'device'; all it really does
is boot up, sit around, and wait to be provisioned. The 'server'
test first sets up a Zezere server, then logs into it, adds an
ssh key, claims the IoT device, provisions it, and connects to
it to create a special file which tells the 'ignition' test
everything worked and it can close out.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-07-23 18:01:06 -07:00
Adam Williamson
72edbfe991 Use qemu host IP 172.16.2.2 not 10.0.2.2
This is to make the infra folks happy, apparently using 10.0.x.x
and 10.1.x.x is causing conflicts since our actual infra network
uses those ranges too.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-07-23 16:40:45 -07:00
Adam Williamson
15eae21722 start_with_launcher: adjust for new overview behaviour
The annoying submenus in the overview app list now scroll right
not down :/ have to adapt this function for that. Had to move
get_release_number earlier because perl ordering.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-07-09 15:54:33 -07:00
Adam Williamson
a3943dc307 Sigh, fix missing brace
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-07-09 14:31:44 -07:00
Adam Williamson
4a6cd8bcd5 Abstract out overview type-to-search bug workaround
And also use it in GNOME apps settings.pm test.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-07-09 14:25:22 -07:00
Adam Williamson
6232be32cf Sigh, move menu_launch_type after get_release_number
Stupid perl.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-07-08 17:09:45 -07:00
Adam Williamson
2f93645a55 Workaround GNOME overview search box not active bug
See https://pagure.io/background-logo-extension/issue/26 - in
current Rawhide, the search box in the overview is not active
when the overview is opened, so you can't just open the
overview and type, you have to click it first.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-07-08 17:07:48 -07:00
Adam Williamson
f70b8ec943 post_fail_hook: don't try ctrl-c on serial console
Can't do that.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-07-07 17:35:32 -07:00
Adam Williamson
ddea8e2169 post_fail_hook: hit ctrl-c if 'dnf -y installer tar' gets stuck
This happens in the iSCSI install test.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-07-06 16:38:12 -07:00
Adam Williamson
7ee071ca08 Add g-i-s timezone bug fix updates as workarounds
This should avoid the bug happening in upgrade tests (I already
built the fix into the base disk image, which should avoid it
happening in other tests).

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-06-24 09:31:40 -07:00
Adam Williamson
f96c14adc0 gnome-initial-setup: add one more check for that auth_required
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-06-17 08:17:49 -07:00
Adam Williamson
fd26d347fe Workaround unexpected authentication required dialog in g-i-s
https://gitlab.gnome.org/GNOME/gnome-initial-setup/-/issues/106
This started happening after the data center move. Really not
sure why.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-06-12 12:28:18 -07:00
Adam Williamson
1b37200446 Work around GNOME Shell app submenu bug
See https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/2878 .
GNOME 3.37.2 seems to have a bug with submenus in the app menu;
the first time you open one you can't scroll through it using
the keyboard. On every open after the first it works fine. This
is a quick and dirty workaround - when we're dealing with a
submenu, open it then close it then open it again.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-06-11 16:00:56 -07:00
Adam Williamson
2e21cfac15 Update cockpit needles and select_cockpit_update for 220
In Cockpit 220, the Updates entry is off the bottom of the screen
so we need to scroll the left bar down before we can click it.
Also update some other needles.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-05-30 10:27:20 -07:00
Lukáš Růžička
4d4b2d7739 Finish the post review changes. 2020-05-28 13:32:42 -07:00
Lukáš Růžička
b5169e602b Use existing needles for fs selection. 2020-05-27 15:54:10 -07:00
Lukáš Růžička
9efb0e10e6 Create a test to resize LVM partitions using Blivet. 2020-05-27 15:54:09 -07:00
Adam Williamson
b59f875af1 Drop F32 workaround updates (both now stable)
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-05-27 13:15:37 -07:00
Adam Williamson
acc46464f8 Revise release variable handling, prerelease checks, os-release
I started out trying to fix os-release for the recent change to
add "Prerelease" tags to the VERSION and PRETTY_NAME fields, then
things spiralled. It got me thinking about the awkward DEVELOPMENT
variable we use, so I decided to get rid of it and refactor the
few things that use it. I refactored the anaconda prerelease tag
check, and wrote a new giant comment that gives details about
exactly how anaconda decides whether to show those tags, to give
context to our choices about when to expect them. This check now
uses a new LABEL variable the scheduler now sets. I also wound up
creating new UP1REL and UP2REL vars to define the 'source' release
for upgrade tests, separate from CURRREL and PREVREL, which are
now never lies - they really are the current stable and previous
stable release, even for update upgrade tests.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-05-07 15:42:08 -07:00
Adam Williamson
8eaddd8c3d Set OfferToSaveLogins policy to false in Firefox config
This seems to work around the Firefox 76 bug with password entry
sometimes breaking:
https://bugzilla.mozilla.org/show_bug.cgi?id=1635833

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-05-06 13:25:46 -07:00
Adam Williamson
e67d3e7c01 Drop similarity level on Cockpit login screen wait_still_screen
We have a flashing cursor, folks.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-05-06 12:58:59 -07:00
Adam Williamson
d66b185471 solidify_wallpaper: restore a wait_still_screen in GNOME path
The old code waited after launching the terminal, the new code
doesn't, which led to a 'g' being swallowed in the first command
in https://openqa.fedoraproject.org/tests/592759 .

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-05-05 10:19:31 -07:00
Adam Williamson
8866b5289e Fix solidify_wallpaper for KDE
The desktop check used the wrong case.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-05-05 10:08:47 -07:00
Lukáš Růžička
61f845dbbf Make solidify_wallpaper more universal to handle different desktops. 2020-05-05 00:14:35 +00:00
Adam Williamson
ea9ac508ac Fix check_desktop variable timeouts
I forgot that tries was configurable. Sigh. Convert it to a
timeout argument.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-04-18 14:54:48 -07:00
Lukáš Růžička
f3d6a9574c Add desktop login test, revise and rename check_desktop
This adds a new test that implementsQA:Testcase_desktop_login
on both GNOME and KDE.

While working on this, we realized that the "desktop_clean"
needles were really "app menu" needles, and for KDE, this was
a duplication with the new "system menu" needles, because on KDE
the app menu and the system menu are the same. So I (Adam)
started to de-duplicate that, but also realized that "app menu
button" is a much more accurate name for these needles, so I was
renaming the old desktop_clean needles to app_menu_button. That
led me to the realization that "check_desktop_clean" is itself a
dumb name, because we don't (at least, any more, way back in the
mists of time we may have done) do anything to check that the
desktop is "clean" - we're really just asserting that we're at a
desktop *at all*. While thinking *that* through, I *also* realized
that the whole "open the overview and look for the app grid icon"
workaround it did is no longer necessary, because GNOME doesn't
use a translucent top bar any more. That went away in GNOME 3.32,
which is in Fedora 30, our oldest supported release.

So I threw that away, renamed the function "check_desktop",
cleaned up all the needle naming and tagging, and also added an
app menu needle for GNOME in Japanese because we were missing
one (the Japanese tests have been using the "app grid icon"
workaround the whole time).
2020-04-17 17:27:04 -07:00
Michel Normand
cc5c85a3e4 Increase timeout for getting_started ppc64le f32
Signed-off-by: Michel Normand <normand@linux.vnet.ibm.com>
2020-04-03 19:38:04 +02:00
Adam Williamson
dc7b7a7241 Great Needle Cleanup 2020
Remove a bunch of needles that have not been used for some time,
plus a few workarounds that are similarly stale.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-03-20 14:02:10 -07:00
Lukáš Růžička
d19cf9553e Reneedle the Gnome Application StartStop tests. 2020-03-18 18:06:34 +01:00
Adam Williamson
e8ea8a7fe5 OK adam remember how we make an empty array? you got this buddy
I believe in you! We ALL believe in you!

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-03-17 08:33:05 -07:00
Adam Williamson
8832c5b81e Add FEDORA-2020-5f05c3ec46 as a workaround to fix FreeIPA upgrade
FreeIPA F31 -> F32 upgrade test is currently failing because
a new pki-core hit F31 stable but not F32 stable yet. It can't go
backwards on upgrade, that breaks stuff. The F32 update has been
pushed stable but just hasn't made mirrors yet as the last F32
nightly compose failed, so let's add it to the workarounds for
now.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-03-17 08:18:11 -07:00
Adam Williamson
d9438e8042 Drop workaround updates that have been pushed stable
Except one that's pushed stable but hasn't made repos yet (as the
last F32 nightly compose failed).

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-03-17 08:17:00 -07:00
Adam Williamson
5fdf0041cf Bump another blivet timeout
Seems 5 seconds isn't long enough to wait here on aarch64, the
previous dialog hasn't always cleared by then. See e.g.
https://openqa.stg.fedoraproject.org/tests/753802

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-03-11 17:43:23 -07:00
Adam Williamson
3444d2f959 Try and fix blivet test fails caused by too-early OK click
We seem to quite often get a failure in the blivet_lvmthin test
here which seems to be caused by trying to click 'OK' while the
'Device type' menu is still changing state or something. Let's
throw in a little delay.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-03-11 17:22:26 -07:00
Adam Williamson
5c6ee14ed3 Add F32 backgrounds update as an update test workaround
So at least GNOME background test passes.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-03-06 21:51:32 -08:00
Adam Williamson
e7c6501737 Extend update test workaround mechanism to upgrade tests
To cover cases like #1767351 where we need to apply a workaround
to the pre-upgrade environment.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-03-06 19:21:44 -08:00
Adam Williamson
9df8fdb00e Drop workaround package that's gone stable
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-03-06 12:54:16 -08:00
Adam Williamson
884f71bb81 Revert "Workaround #1805553 (single disk not selected as install target)"
This reverts commit adf3f91818.
The bug has been fixed in anaconda, so we can drop this, which
is good as it has timing issues producing false positives on
Rawhide...
2020-02-26 14:30:08 -08:00
Adam Williamson
3d29d7b746 Add efivar update for F32 as workaround to fix UEFI update tests
This is pending stable, but looks like the update push won't
happen for a few hours, so I'm adding it as a workaround so we
can re-run the tests and get them to pass.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-02-26 12:48:17 -08:00
Adam Williamson
8e43dfa304 Drop F31 workaround that's gone stable, add F32 lmod workaround
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-02-25 17:40:22 -08:00
Adam Williamson
adf3f91818 Workaround #1805553 (single disk not selected as install target)
Rawhide seems to have developed a bug where a single disk is no
longer automatically selected as the install target when you
enter the INSTALLATION DESTINATION spoke. We need to work around
this (but register it as a soft failure).

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-02-20 17:41:34 -08:00
Adam Williamson
1eb4e3dca5 Add perl syntax check test, add it to CI
Inspired by openQA's 01-compile-check-all.t, this adds a perl
test which checks the syntax of main.pm and all lib and test
files, and hooks it up to CI. Requires os-autoinst and
perl-Test-Strict.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-02-13 15:28:09 -08:00
Adam Williamson
66e53feb4d Update workarounds (drop update now stable, add F31 libdnf fix)
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-02-05 02:51:37 -08:00
Adam Williamson
0a4a787c03 Give Firefox longer to start
It seems to take a long time sometimes for some reason. Can't
pin it down but it's causing test flakes, so let's just let it
be. It *may* happen when chrony adjusts the system clock just as
Firefox is starting, for some reason.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-01-22 10:40:46 +01:00
Adam Williamson
d236c48152 Doh, fix stray quote mark from last commit
Where did I leave my brown paper bag...

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-01-16 18:57:17 +00:00
Adam Williamson
1098450fd6 Pull in F30 Cockpit 210 update as a workaround
Otherwise the new cockpit main screen needle match fails, because
'machine' is not on the top part of the screen.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-01-16 18:51:40 +00:00
Adam Williamson
ba40ba3e4a Drop #1663050 workaround (fixed a while ago)
This block is kinda weird, but I don't want to fiddle with it
any more right now. I don't know why we do this check_screen
exactly like this.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-01-10 14:41:41 -08:00
Adam Williamson
0714143673 Drop a stray old comment and move a debug block up
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-01-10 14:34:58 -08:00
Adam Williamson
fc93309b41 Drop _assert_and_click shim
We're on newer code on both deployments now, no longer needed.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-01-10 14:22:20 -08:00
Adam Williamson
dba4e8c57d Drop old version conditionals
We're well past 27 now...

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-01-10 14:20:44 -08:00
Adam Williamson
fcb06a874c Drop no-longer-needed update workarounds
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-01-10 14:18:54 -08:00
Adam Williamson
0926be0520 Drop similarity level on a flashing cursor wait_still_screen
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-01-08 15:31:32 -08:00
Adam Williamson
478a55f057 Drop one more mention of wait_idle
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-01-03 14:20:18 -08:00
Adam Williamson
34dc2751a5 Replace remaining wait_idles with sleeps
wait_idle is finally removed upstream in recent git os-autoinst.
This replaces all remaining wait_idles with sleeps, except for
one which is removed (I'm hoping improvements to typing in the
last few years should mean it isn't necessary any more, if it
turns out to be, I'll put it back as a sleep).

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-01-02 17:44:45 -08:00
Adam Williamson
501b4bccc8 Fix 'clear' after login in French
...because it comes out as 'cleqr'. Note, this may be fragile if
we start doing more stuff post-install, but for now I think it's
safe, I don't *think* we should ever hit this after running
`loadkeys us`.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-12-14 09:17:34 -08:00
Adam Williamson
de2c44e7ae Work around Lmod bug in KDE update packages, with new mechanism
It seems like the situation where we need to pull an update from
updates-testing into all update tests to work around some known
issue is going to keep happening. So instead of constantly
adding and then entirely removing bespoke lines for each specific
workaround, let's have a permanent mechanism for doing this: a
hash with release numbers as keys, and arrayrefs of update IDs
as values, and a block to call `bodhi updates download` on the
appropriate array for the release under test. This way, to add
or remove a workaround you just update the hash. If we're at a
point where *no* workarounds are needed the %workarounds hash
can be made entirely empty (it must exist, though) and the code
will be a clean no-op.

The actual workaround here pulls in Lmod updates I just sent out
to work around this issue in one of the KDE update tests:

https://openqa.fedoraproject.org/tests/497160#step/base_update_cli/11

there's some code in Lmod that gets sourced in bash profiles
which breaks openQA's `validate_script_output` by blurping two
lines of informational output into the output of the script.
The update backports a change from upstream Lmod master that
sends that informational output to stderr instead of stdout.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-12-11 12:02:21 -08:00
Adam Williamson
c9ae9c4d67 Drop SELinux and NSS update workarounds (went stable)
All these updates have gone stable now, so we no longer need
these workarounds.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-12-10 18:12:13 -08:00
Adam Williamson
3511a5b57b Replace jss workaround with selinux and nss workarounds
The jss updates all went stable already. Now we have a problem
with SELinux, upower and container-selinux (we need a newer
selinux-policy to avoid upower failures in the services_start
test, but the first attempt to fix it caused the desktop_updates
test to start failing because container-selinux needed adapting
to changes in selinux-policy...let's just pull in the updates
with the latest versions of both to be safe), and one with NSS
that causes Firefox to give false certificate errors sometimes
(this is particularly affecting the FreeIPA browser test). As
usual these should be dropped once the updates go stable.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-12-06 11:51:07 -08:00
Adam Williamson
e8802935f9 Tweak text_console_login match area
On Rawhide Cloud_Base boots, there's some SSH key and network
information printed above the 'login:' prompt, so we can't
expect empty space there. Also tweak console_login() to clear
the screen after logging in, so the login prompt is cleared and
doesn't confuse things on subsequent runs (like it did first
time we tried this). And add a new user logged in needle, as it
seems after we clear the screen the tilde appears in a slightly
different position and the existing needle doesn't match.

https://openqa.fedoraproject.org/tests/489003#step/_console_wait_login/7

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-11-27 10:39:29 -08:00
Adam Williamson
defab3bfcb Correct renaming of the virtio serial consoles
That second string didn't work how I thought it did.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-11-20 09:15:58 -08:00
Adam Williamson
48b6c9d3e9 Change name we use for virtio serial consoles
There is nothing inherently 'root'-y about these so it makes no
sense to prefix their names with 'root-'. And why change from
'console' to 'terminal' compared to the naming used in the
actual qemu command and the log files? It's just confusing.
Let's be consistent (except for using - instead of _ here...
but - is easier to type!)

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-11-20 08:39:28 -08:00
Lukáš Růžička
b93a197c22 Enable Anaconda Text install via serial console.
This adds the Anaconda text installation test over
serial console and FIXES #115.
2019-11-19 22:54:55 -08:00
Adam Williamson
9bec7ee797 Bump timeout on exiting Firefox again...
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-11-07 07:35:32 -08:00
Adam Williamson
b82a1dec6f Add test for QA:Testcase_Anaconda_User_Interface_VNC
This adds a test for QA:Testcase_Anaconda_User_Interface_VNC -
the VNC install test case. It's implemented as a server/client
pair, with the server booting from the Server DVD image with
`inst.vnc` and the client booting from the desktop base disk
image, setting up networking, then running Boxes to connect to
the server and run the install.

There are various little tweaks to test loading and logic to
handle this, mostly pretty clear. We also move the workaround
for 'spurious auth prompt appears on desktop after you switch
away to a VT and back' out of the desktop update test and into
the `desktop_vt` helper function, since now this test can hit
it as well. We enhance _graphical_wait_login to handle the boot
loader if needed (it has never needed to until now).

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-11-05 14:46:10 -08:00
Adam Williamson
efec7010cb Handle an 'akonadi did something' notification in KDE, etc.
This handles a case where KDE shows a notification saying
'PIM Maintenance (Finished)', like this:

https://openqa.fedoraproject.org/tests/477345#step/desktop_notifications/34

we need to click it away for the desktop_notification test to
pass. It also clarifies the difference between this notification
and the eternal 'akonadi_migration_agent is doing something'
popup in the needle names and comments. It also replaces the
'check_screen then assert_and_click if found' pattern in several
notifications-related places with the better 'check_screen then
click_lastmatch if found' pattern now available upstream.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-10-30 09:05:06 -07:00
Adam Williamson
8c07149ec7 Workaround #1766451 in update tests
Download the fixed jss to the advisory repo.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-10-29 18:03:59 -07:00
Adam Williamson
764a2bdc33 Drop #1757948 workaround, shouldn't be needed any more
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-10-29 17:59:33 -07:00
Adam Williamson
33e3224411 Drop stray start_cockpit export from utils.pm
It was moved to cockpit.pm, but this wasn't removed.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-10-29 15:12:04 -07:00
Lukas Ruzicka
22b185abf6 Enable tracking of executed applications in Application Start/Stop tests (FIXES #116)
This PR adds the following:
* moves out the presetting procedures, so that two long terminal tests do not have
to run twice
* add methods for application to register when successfully started
* adds a test that checks if all required applications have registered
2019-10-16 17:36:37 -07:00
Adam Williamson
079b969fab Workaround RHBZ#1757948 in F30 update tests
We need to pull in the fixed fwupd or else the desktop_update
test always fails.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-10-15 19:23:55 -07:00
Lukas Ruzicka
d82f4ecd7f Develop a new test for system updates via Cockpit.
* server-cockpit-updates tests that Cockpit can be used to update the system.
* server-cockpit-autoupdate tests that users can use dnf-automatic for system
updates.
* cockpit functions were removed from utils.pm and put into an extra library
for cockpit - cockpit.pm which all cockpit tests are now using.

Review cockpit.pm

Review autoupdate test.

Review the update test.

Fix typo in cockpit.pm

Add sleep.

Add missing command.

Delete an unused needle.
2019-10-01 16:04:01 +02:00
Adam Williamson
b32449f72a Add missing bracket
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-09-20 11:04:31 -07:00
Adam Williamson
6538a82096 Download by ADVISORY_NVRS with koji for updates, not ADVISORY
This goes with a corresponding fedora_openqa commit that passes
ADVISORY_NVRS when scheduling update jobs. This is to address
https://pagure.io/fedora-qa/fedora_openqa/issue/78 so we can
publish spec-compliant and correct CI Messages: we will decide
what NVRs are in the update at scheduling time and always get
and test those NVRs, rather than the test downloading whatever
is in the update when it is run.

Some consequences: manual restarting or cloning of an update
test scheduled before this change lands will result in failure;
to do this you'll have to add the ADVISORY_NVRS value manually
with clone_job.pl, or simply reschedule the update with
fedora-openqa.

Manual restarting or cloning of an update test scheduled with
this change will always test the same NVRs. If the update has
changed and you want to re-test with the new packages in the
update, you must change ADVISORY_NVRS manually with clone_job,
or reschedule with fedora-openqa.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-09-20 10:58:27 -07:00
Adam Williamson
7f96c3aa49 Remove a now-unneeded workaround
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-09-20 10:51:16 -07:00
Michel Normand
6455319ef5 typo in lib/utils.pm
reported in autoinst-log.txt
===
"my" variable $files masks earlier declaration in same scope at /var/lib/openqa/share/tests/fedora/lib/utils.pm line 352.
"my" variable $beta masks earlier declaration in same scope at /var/lib/openqa/share/tests/fedora/lib/utils.pm line 995.
===

Signed-off-by: Michel Normand <normand@linux.vnet.ibm.com>
2019-09-20 07:15:21 +02:00
Adam Williamson
dc8ed1c9ba Yet more pre-release check fixes
We need another needle for French installs, and we need to use
ISO_URL for checking the ISO file name if ISO isn't set.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-09-11 14:31:54 -07:00
Adam Williamson
243dfbdacd desktop_vt: hackaround 'tty?' problem on F31
On F31 update tests, desktop_vt is broken because the 'ps -C'
command is showing 'tty?' as the tty on which Xwayland/Xorg is
running. Let's try using loginctl as a workaround for this.
This ordering of commands should ensure the ps -C output takes
precedence when it's correct.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-09-03 16:19:08 -07:00
Adam Williamson
567b2f1a3f Wait longer for console to appear after quitting Firefox
A couple of tests failed in F31/Rawhide lately because quitting
Firefox (running on a bare X server) took more than 10 seconds
to get back to a console...not sure why, but it's not something
we ought to waste a lot of time on, let's just bump the timeout.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-08-28 11:07:13 -07:00
Adam Williamson
b9934c9816 Fix prerelease check for Branched update tests
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-08-27 08:36:40 -07:00
Adam Williamson
bf5691e69d Fix and simplify fedora_release test
Also simplify os_release a bit thanks to the improved spell_
version_number.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-08-21 13:09:40 -07:00
Adam Williamson
efbfe95213 Fix wrong repos_mirrorlist call which broke all update tests
Ugh. Sorry. Teach me to fire off changes without testing them.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-08-21 11:29:30 -07:00
Adam Williamson
86488d2611 Expect Workstation branding on Silverblue installer
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-08-21 00:01:47 -07:00
Adam Williamson
397dc9a9cf Don't redefine $prerelease
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-08-20 23:42:01 -07:00
Adam Williamson
a177a63ec1 Factor out s/metalink/mirrorlist/ into a util function
We do this in quite a few places and need to do it in another,
so let's just have a function for it. It takes a file glob
so we can have it run on a different one for _live_build.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2019-08-20 14:16:23 -07:00