1
0
mirror of https://pagure.io/fedora-qa/os-autoinst-distri-fedora.git synced 2024-11-09 09:04:20 +00:00
Commit Graph

500 Commits

Author SHA1 Message Date
Adam Williamson
6a7c11466c Get updvercheck.py from main now it's merged
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-02-03 08:58:38 -08:00
Adam Williamson
06bfd2d2ae Make the update non-matching package check smarter
With Rawhide updates, we quite often run into a situation where
a test runs after a *later* version of the package has already
gone stable. This even happens for stable releases too, though
less often. The current shell-based check just always fails on
this case, but it's usually OK, and manually marking every case
like this with an "it's OK!" comment gets tiring. Instead, let's
use a smarter Python script to do the check. We compare the EVR
of all installed update packages with the EVR of the package
from the update. If it's the same, fine. If the installed package
is lower-versioned, that's always an error, and we fail. If the
installed package is higher-versioned, we check whether the
update already went stable. If it did, then we soft fail, because
probably nothing can go wrong at this point (this is the usual
Rawhide case). If the update did not yet go stable, we still
hard fail, because something can go wrong in this case: if the
update *now* goes stable, the older version from the update may
be tagged over the newer version the test got (presumably from
current stable).

If anything goes wrong with the Bodhi check, or the test is
running on a task not an advisory, we treat both cases as fatal.

The script also gives easier-to-understand output than the old
approach, which should be a bonus.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-01-31 10:14:45 -08:00
Adam Williamson
6a36fe28d1 Handle a false failure when testing koji updates
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-01-14 02:57:38 -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
d012d31270 _post_fail_hook: only do advisory package checks when appropriate
Same conditions as used in main.pm to load the tests in the
normal flow. It makes no sense to do this on non-update tests,
or on the non-matching support server case.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-14 08:47:46 -08:00
Adam Williamson
02136a80e1 utils.pm: drop some stuff unneeded after F35 EOL
and associated needles.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-13 14:34:34 -08:00
Adam Williamson
6f0478d4b4 gnome_initial_setup: drop a <35 conditional that's not needed
F34 is EOL for a while.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-13 14:34:34 -08:00
Adam Williamson
6e9213f4b7 Drop use of _ADVISORY_REPO_DONE, always use file tests
This is safer if the advisory stuff was done on a previous test
run. Hilariously, this exposed a dumb mistake I made years ago
in installedtest.pm and never noticed before: the calls to
advisory_* at the bottom of that file are meant to be in the
post_fail_hook, but they weren't, which meant they got called
by the scheduler. This didn't cause any failures because the
first line caused them to return immediately based on a get_var
call (which it's OK to do in the scheduler), but changing it
to a script_run call (which it's *not* OK to do in scheduling)
caused all the tests to blow up immediately and confused me
*a lot* until I spotted this!

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-12 08:53:02 -08:00
Adam Williamson
7429b438fd Don't update system in repo_setup on update install tests
When I enabled _advisory_post for live and ostree install tests,
the point was to check that updated packages were included in
the install media and used during installation. We shouldn't run
a system update in _repo_setup_updates on this path because it
will hide the problem if the updated packages weren't included.
The INSTALL variable is for this purpose - it was previously
used to skip _advisory_post on the same path. At the same time
let's remove some stray settings of this var on non-update tests
as it serves no purpose there.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-09 13:07:15 -08:00
Adam Williamson
5698525cc7 Enable the buildroot repository for Rawhide update tests
Per discussion at https://pagure.io/fedora-ci/general/issue/376
it really feels like this is the right thing to do. There are no
buildroot overrides for Rawhide, so we don't have to worry about
cross-pollution. The buildroot repo only contains builds that
have been tagged stable since the most recent Rawhide compose,
and thus will go into the next one. It makes sense to test later
updates against these. This avoids issues like:
https://openqa.fedoraproject.org/tests/overview?distri=fedora&version=38&build=Update-FEDORA-2022-30a952e331&groupid=2
where the tests of an update failed because it requires another
update which had been submitted and tagged stable previously, but
after the last compose.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-08 14:28:09 -08:00
Adam Williamson
e45473103f Upload appropriate logs on ostree_build failure
Also use get_var("TEST") for installer_build - no point trying
to upload these logs for the other tests in the same flavor,
they won't be there.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-03 11:17:17 -08:00
Adam Williamson
ba88dac325 Handle chunked ADVISORY_NVRS_N settings
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-01 15:52:20 -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
173bdef5cb Revert "Try and get more detailed Firefox logs from startx"
This reverts commit f424e5bac5. It
never actually worked, and the Firefox-dying bug seems to have
magically gone away recently.
2022-11-25 12:13:08 -08:00
Adam Williamson
c9191b0d4a disable_firefox_studies: don't run twice, skip uploads
There's no need to run this twice (which can happen on some
paths), so if the first file already exists, just bail. Also,
don't bother uploading the config files any more - that was just
for debug while I was making this stuff work, now it works, and
this saves some time.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-11-25 11:39:39 -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
Adam Williamson
2c6e1ec76b post_fail_hook: give dnf -y install tar a bit longer
It seems to time out a lot on lab but not on prod, for some
reason. Let's just give it a little longer.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-11-25 11:12:46 -08:00
Adam Williamson
b388c6fc94 cockpit: enable admin mode after logging in as test
Sigh, this is a pain and adds more fragile needles.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-11-18 17:24:15 -08:00
Adam Williamson
0646dc64ad cockpit: log in as user 'test', not root
From 280, the cockpit package disabled logging in as root by
default. We could wipe that config file, but it seems better to
respect the default config and log in as the admin user 'test'
instead of as root.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-11-18 16:34:55 -08:00
Adam Williamson
c9924ecdeb Drop workaround which went stable two weeks ago
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-11-18 13:19:48 -08:00
Adam Williamson
946411cba4 Add layer-shell-qt workaround to make KDE work on Rawhide again
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-11-02 11:04:37 -07:00
Adam Williamson
c1d676e6ae Drop a workaround that went stable weeks ago
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-11-02 11:04:19 -07:00
Adam Williamson
b5c8a8d5f7 Fix tell_source
OK, that last commit was just, uh, wrong.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-10-28 12:06:57 -07:00
Adam Williamson
31826f7938 utils: simply and robustify tell_source
This is simpler if we just always lowercase $iso, plus it saves
us when somebody (*cough*) messes up the casing.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-10-28 11:57:33 -07:00
Adam Williamson
6b341097f2 Add some missing underscores to a variable check
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-10-22 14:10:13 -07:00
Adam Williamson
b84125d4f5 Replace scratch build override for mock with official update
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-10-18 09:21:54 -07:00
Adam Williamson
b6fdb4c3fa Add a mock build that works as root to Rawhide workarounds
mock 3.2 does not allow running as root. This breaks the live
image build tests. It's being reverted upstream, this scratch
build has the reversion backported.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-10-17 07:18:40 -07:00
Adam Williamson
9f1c136c37 Clear pushed workarounds for Rawhide
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-10-17 16:17:43 +02:00
Adam Williamson
1c819304d2 F38 workarounds: replace desktop-backgrounds with f37-backgrounds
desktop-backgrounds update went stable, but we also need an
f37-backgrounds update which was only just submitted to fix the
problem.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-10-08 23:13:33 +02:00
Adam Williamson
6b31f622d8 Add podman update as Rawhide workaround
podman tests are currently failing for all Rawhide updates. Not
sure what triggered this, but this update seems to fix it, though
it's failing its own test suite so not yet being pushed stable.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-10-08 10:25:47 +02:00
Adam Williamson
fb774a7326 Rawhide workaround: desktop_backgrounds with symlink fix
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-10-07 18:55:14 +02:00
Adam Williamson
59c52453fe Fix an erroneous result of over-enthusiastic sed'ing
Whoops.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-09-27 23:46:55 -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
Adam Williamson
4b516b6b31 Drop Rawhide workarounds that are now stable
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-09-15 18:14:11 -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
Adam Williamson
0a411bd8e1 Add python-jwcrypto as workaround for F38
FreeIPA replica tests broke in today's compose, this solves it.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-09-14 15:32:55 -07:00
Adam Williamson
f424e5bac5 Try and get more detailed Firefox logs from startx
When we run Firefox directly on X lately, we often hit a bug
where X just suddenly exits in the middle of doing stuff in
Firefox. I'm not sure if this is a bug in X or in Firefox (if
Firefox crashed, X would immediately exit). Let's see if this
helps get any info on what's going on with Firefox.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-09-09 13:08:47 -07:00
Adam Williamson
aa73342380 Remove FEDORA-2022-2beaa02bb4 workaround
It's stable now.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-09-04 08:38:33 -07:00
Adam Williamson
f81f3fea14 Add FEDORA-2022-2beaa02bb4 as Rawhide workaround (#2121952)
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-08-27 12:36:15 -07:00
Adam Williamson
7bbec4c6bb Drop a workaround for 38 that went stable 3 days ago
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-08-27 12:29:58 -07:00
Adam Williamson
6d5c0c723e Add latest FreeIPA as a workaround for Rawhide
samba-client-libs with an soname bump made today's Rawhide, a
freeipa rebuilt against it did not, so we need this in overrides
or all FreeIPA tests fail on all Rawhide updates.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-08-24 12:09:32 -07:00
Adam Williamson
2c7d6b53db Drop a no-longer-needed workaround
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-08-24 12:08:49 -07:00
Adam Williamson
87a0edf0fc Use rpm-ostree usroverlay for Firefox config on rpm-ostree
Editing the files under /ostree/deploy doesn't work on Rawhide
any more because it's been made read-only. Thanks to Timothée
Ravier for pointing out this way of doing it, which is better
anyway and avoids awful quotation issues in the code.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-08-19 00:20:36 -04:00
Adam Williamson
e9f5378df5 Remove some F37 workarounds that are in current compose
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-08-13 10:13:51 -07:00
Adam Williamson
51eed16128 Add g-i-s with fixed page skipping as f37 workaround
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-08-13 00:20:39 -07:00
Adam Williamson
71a7b8f60d Drop several F37 workarounds that went into Branched compose
This should ease space pressure on some tests.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-08-12 01:14:28 -07:00
Adam Williamson
fc11917a01 Add f37-backgrounds and desktop-backgrounds as workarounds
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-08-11 10:26:30 -07:00
Adam Williamson
2807410dd8 Add interdependent samba, sssd and freeipa updates as workarounds
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>
2022-08-09 12:12:56 -07:00
Adam Williamson
8ede32a76c Give workaround download longer
the webkitgtk workaround is large. 3 minutes isn't long enough
apparently.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-08-08 15:34:30 -07:00
Adam Williamson
8fc2f71df9 Add new webkitgtk build as workaround for file conflict issue
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>
2022-08-08 12:05:09 -07:00