Commit Graph

434 Commits

Author SHA1 Message Date
Lukas Ruzicka 9abb538e72 Dismiss timezone delete. 2024-02-29 14:35:21 +01:00
Lukas Ruzicka a98aa39016 Print nexts. 2024-02-29 13:49:18 +01:00
Lukas Ruzicka 0955728c92 Fix the Silverblue location stuff 2024-02-29 11:39:18 +01:00
Lukas Ruzicka 5bcbaeeb5c Add the graphical upgrade tests.
This PR builds on some elements of the current upgrade process,
such as upgrade_boot, upgrade_preinstall, upgrade_postinstall, but
replaces the upgrade_run with graphical_upgrade_run to use graphical
methods to upgrade the system.
This would not be possible without necessary settings, that are
performed by graphical_upgrade_prerequisites.
Works for both Gnome and KDE.
2024-02-29 11:20:37 +01:00
Adam Williamson ec11ce7903 Add FEDORA-2024-4afc8e64b0 to F40 workarounds to fix g-i-s pages
I missed reverting the g-i-s page skip config when deferring
the webUI Change to F40. Now I changed the conditional in the
openQA test to expect F40 to behave like F39 and earlier, it's
failing because it's seeing too many pages. This should resolve
it.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-28 00:31:53 -08:00
Adam Williamson 4c83347d54 Adjust for webUI deferral to Fedora 41
Same as the deferral from 39 to 40, except one of the tests has
gone away in the mean time.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-27 19:49:40 -08:00
Adam Williamson 2bc144ad0b Add workarounds for ostree overlay issue (#2266344)
jlebon and jmarrero figured out the fix for this, while we wait
for the packager to merge it their preferred way, let's use
scratch builds to work around it so every update doesn't get a
failed test.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-27 15:16:49 -08:00
Adam Williamson ad394a7feb Drop workarounds that have reached stable
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-27 15:13:13 -08:00
Adam Williamson c146bf4384 Add a couple of needed builds to F40 workarounds
Another case where an update was submitted after its deps had
gone stable, but before they made a compose. Maybe we really need
to set up a buildroot repo for tests of updates to branched-before
-bodhi-activation too. I'll think about it.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-22 12:49:49 -08:00
Adam Williamson 4a6d52e91e Add g-i-s build with live-user mode reverted as a workaround
Now the fedora-kickstarts PR to remove anaconda-webui was merged
we need this for tests to pass. Remove after next compose.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-21 15:33:32 -08:00
Adam Williamson cb695c7e67 drop a workaround that's gone stable and into a compose
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-21 15:33:04 -08:00
Adam Williamson 15037690cc Add FEDORA-2024-5feb9b58f5 to F40 workarounds
Needed to make the tests for FEDORA-2024-039bae341c pass, I
don't wanna wait for a compose.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-20 18:20:16 -08:00
Adam Williamson 2c520e47c8 Drop update that's gone stable and into a compose from workarounds
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-20 18:19:44 -08:00
Adam Williamson 6c47319930 Add FEDORA-2024-11ba4726a4 as workaround for F40
The new gnome-shell from FEDORA-2024-f543e8595c requires this.
We don't use a buildroot repo for Branched even in the short
period where it acts like Rawhide (no karma or time requirements)
so let's just use a workaround.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-16 13:05:54 -08:00
Adam Williamson 06de92375f Clear workarounds that have reached composes
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-16 13:05:22 -08:00
Lukáš Růžička 8c027c9e10 Unbreak the /etc/release test by fixing a spelling typo in the function. 2024-02-16 13:32:01 +01:00
Adam Williamson bd25bdac69 g-i-s: we always need two tabs to get to password confirm now
F38 is the oldest thing we test, and it has this flow. So let's
just drop the check here and always hit tab twice.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-14 15:24:32 -08:00
Adam Williamson 9ffd181bbd Don't expect g-i-s online accounts page on F40+
It was removed upstream:
https://gitlab.gnome.org/GNOME/gnome-initial-setup/-/merge_requests/221

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-14 15:19:46 -08:00
Adam Williamson edcbf6a524 Wipe the openh264 repo a bit harder
We should wipe it both before and after running repo_setup to
really get rid of it. Ideally we should stop doing this at all,
but for right now the repo isn't there for Rawhide post-F40
branching yet, so let's keep this until that's done.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-14 14:22:44 -08:00
Adam Williamson d998a56383 Add 41 to the workarounds table
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-14 13:35:32 -08:00
Adam Williamson f8f1d0d433 Add mock and mock-core-configs to F40 workarounds
I'm hoping this will fix live image builds.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-14 11:58:43 -08:00
Adam Williamson 6d4a8a9fb7 setup_repos: fix a logic bug
we might be on a non-update waonly path here, we can't bail in
that case.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-14 11:45:37 -08:00
Adam Williamson e6dabfa0df f40 workarounds: drop old anaconda build, add new lorax
We don't need this anaconda scratch build any more (the official
build has the fix now), but we *do* need the new lorax update I
just built to fix installer image builds with branched F40. See
https://github.com/weldr/lorax/pull/1379

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-14 00:15:09 -08:00
Adam Williamson fa5cedc63a Add anaconda workaround build for #2262892
This adds a scratch build with my proposed patch:
https://github.com/rhinstaller/anaconda/pull/5460
to get the tests to start passing again, so we don't have the
flood of red which makes it hard to spot other problems.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-02-06 16:51:55 -08:00
Adam Williamson 5379850780 setup_repos: fix setup_repos.py call for KOJITASK case
I forgot to actually set the string in this case. Whoops.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-24 11:16:07 -08:00
Adam Williamson 4dd94df3bc get setup_repos.py from main branch not concdl now it's merged
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-11 15:38:10 -08:00
Adam Williamson 5f702b0be8 Run update repo setup steps from a serial console
This is a surprisingly large change as we want to go back to
the console we were previously on after doing it. To do that we
need to know what console we were on, and to know *that*, we need
to port everything that currently uses (ctrl-)alt-fX to switch
consoles to use select_console instead.

This is primarily intended to make running setup_repos.py faster
when it has to download a lot of packages (as typing in hundreds
of package names is quite slow). But it actually makes the whole
thing faster, even when only downloading one or two packages.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-11 12:09:59 -08:00
Adam Williamson d445a80016 update testing: use a concurrent script to download packages
This uses a Python script which implements concurrent downloads
(via asyncio) to download workaround and update packages and
configure the repos. This should speed up the process for large
multi-package updates.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-11 11:31:40 -08:00
Adam Williamson 8251756331 Revert to having tests, not the scheduler, download packages (#108)
This effectively reverts 97618193 - but had to be done manually
and adjusted to maintain support for testing side tags and for
testing multiple tasks, since those features were added since
the update ISO change.

The 'scheduler injects ISOs of packages into the tests' approach
was intended to speed things up, especially for large updates,
and it did, but it had a few drawbacks. It means restarting
older tests from the web UI doesn't work as the ISOs get garbage
collected (you have to re-schedule in this case). And it has the
rather large problem that you can now only schedule tests from
the openQA server (or at least a machine with the openQA asset
share mounted), because the package download and ISO creation
just happen wherever the scheduler is running and assume that
the openQA asset share that will be used by the tests is at
/var/lib/openqa/share in that filesystem.

That's too big of a drawback to continue with this approach, IMO,
so this reverts back to the old way of doing things, with a bit
of refactoring to clean up the flow a little, and with support
for testing side tags and multiple tasks maintained.

As a follow-up I'm going to see if I can replace
_download_packages with a much more efficient downloader script
to mitigate the time this process takes on each test, especially
for large updates.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-11 11:31:40 -08:00
Adam Williamson 04e9f84338 decrypt: instead of waiting, let's try slow typing
Seems the bug might just be that plymouth got more sensitive to
fast typing, so instead of waiting, let's try slow typing.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-03 17:40:31 -08:00
Adam Williamson ce0a04b40a Wait and re-assert before entering decryption passphrase (#2256682)
New Plymouth seems to have a bug where it shows the decryption
prompt briefly then shows a spinner and refreshes it, throwing
away any already-typed input. This is breaking our tests quite
often (any time os-autoinst is "lucky" enough to spot the first
brief appearance of the prompt and start typing). To work around
it, after we first see the prompt, wait for the screen to settle
and re-assert the needle before typing. This should reliably
wait out the refresh cycle.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-01-03 14:13:30 -08:00
Adam Williamson 838d65f86c solidify_wallpaper: handle KDE no longer having a handy 'black'
Plasma 6's color chooser seems to have dropped the nice "basic
colors", so choosing black got harder. Let's try using the HTML
color input box thingy instead, and typing #000000, the HTML
color code for black.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-11-29 11:51:17 -08:00
Lukas Ruzicka d50885e584 Create a test for basic Flatpak operations.
This PR tries to respond to issue #294.
On Silverblue, this will try:

* flatpak install
* flatpak remote-add
* flatpak list
* flatpak remotes
* flatpak remove
* flatpak update

and also it tests that a flatpak can be built.
2023-11-13 10:37:52 -08:00
Lukas Ruzicka 2d726d4ccb Add subroutine to set update notification timestamp. 2023-10-10 17:43:06 -07:00
Lukas Ruzicka 296b43381a Allow language selection on WebUI installations.
Currently, the installation via WebUI is mostly pushing the Next button
which seems to be ok for the production which is based in the US.

This PR makes openQA to select languages when the  G-I-S runs
before Anaconda. The particular language is selected based on
the LANGUAGE variable.
2023-09-26 00:16:22 +00:00
Adam Williamson e92ddbbece Use shift-tab, not tab, to get to Try button in g-i-s live flow
The latest version of g-i-s grew a "Previous" button on the
final page, and hitting tab once now activates that, not the
Try button. shift-tab *should* get us to Try on both old and
new versions.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-09-21 17:59:34 -07:00
Lukas Ruzicka 380a8d5dd6 Revert "Add print."
This reverts commit e977a70cb0.

By mistake, I pushed into the main branch.
2023-09-14 12:56:26 +02:00
Lukas Ruzicka e977a70cb0 Add print. 2023-09-14 12:45:24 +02:00
Adam Williamson ea8500cf07 Various changes for webUI deferral to F40
webUI has been deferred to F40, so we need to expect the old UI
flow on F39 now. This should cover everything, I hope.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-09-12 16:13:49 -07:00
Adam Williamson 2458ff7580 Adjust tests to handle webUI reversion
We're reverting webUI for Fedora 39.
https://bodhi.fedoraproject.org/updates/FEDORA-2023-73c4f1a802
is the update that implements this; adapt the tests to handle it
(by expecting the old flow when testing that update, and editing
the kickstart to drop anaconda-webui when building the live
image).

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-09-12 11:09:52 -07:00
Adam Williamson 82ae0a3b81 gnome-initial-setup: handle keyboard being skipped
We now have a fix for the bug on the new webUI flow where the
language and keyboard screens weren't skipped on the first boot
after install, as intended. language is never *really* skipped -
it just turns into welcome - but keyboard is now being skipped,
which messes up the logic here.

For a short time we need to handle both paths, to get the new
anaconda builds through and new composes built. In a couple of
days we can simplify this to just always assume keyboard will
be skipped on the first boot on Workstation live installs on
F39+.

Also drop handling of auth_required in g-i-s - I'm pretty sure
that bug got fixed years ago - and wait_still_screen for three
seconds on each page, to let animated transitions settle.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-09-07 13:11:45 -07:00
Adam Williamson df1c9037d6 Add a missing ; in utils.pm
I've no idea how this isn't making things crash?

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-08-25 14:38:40 -07:00
Adam Williamson f1a6c91784 Drop a couple of webUI conditionals to 39, not 40
We just landed the webUI stuff for F39, so now we need these
conditionals to kick in for F39+, not F40+.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-08-23 15:48:53 -07:00
Adam Williamson 9528d37582 launch desktop, not installer, at end of g-i-s on notifications
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-08-23 10:15:07 -07:00
Adam Williamson ec5bab0176 Initial anaconda webUI support
This is tailored to the initial deployment of webUI in
Workstation live images only; we may need to tweak flows and
approaches as webUI goes further.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-08-22 18:05:51 -07:00
Adam Williamson 91bf4e423f Disable forced use of HTTP 1.1 for curl and git
To see if the bug has gone away now -
https://pagure.io/fedora-infrastructure/issue/11426#comment-867456

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-08-10 15:13:04 -07:00
Adam Williamson edcfed346d Revert "Work around there being no F40 toolbox container yet"
This reverts commit 265e5c027a.
The f40 toolbox container is now findable, so this shouldn't be
needed any more.
2023-08-10 12:54:36 -07:00
Adam Williamson 265e5c027a Work around there being no F40 toolbox container yet
See https://github.com/containers/toolbox/issues/1233#issuecomment-1672247681
we'll have to use an F39 container for now.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-08-09 15:33:44 -07:00
Adam Williamson 475b875bc0 Forcibly install dnf for FEDORA-2023-5fd964c1bf
Per https://bodhi.fedoraproject.org/updates/FEDORA-2023-5fd964c1bf#comment-3149533
we kinda need to do this to allow this update through, so long as
we're not going to have dnf obsolete dnf5 or anything like that.
It's a bit unfortunate but I don't see an alternative.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-08-07 15:34:20 -07: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