This comes from trying to fix the annoying recurring problem with
mistypes in KDE which has been going on since at least December.
First, we add the attempt to kind of 'precache' the kicker menu
in aasetting.pm. Then, I thought, all this snapshot loading has
to be putting a lot of load on the workers. And when each subtest
passes, it shouldn't really be necessary - they all end with
quit_with_shortcut(), which verifies that the app exited and we
got back to a blank desktop, so successful subtests should not
usually interfere with each other. We probably only want to
rollback on *failed* subtests, which is in fact openQA's default
behavior. If any specific tests change the system state such that
later tests might be affected, we can go back and just set those
tests as always_rollback, but I think it should be safe to skip
rollbacks on success for most of them.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Various changes to the Tour text needed needle updates. The
final screen doesn't say "Have a nice day!" any more, so let's
rename that needle.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Since 46, the 1 minute button is a quickstart, it doesn't just
set the timer but starts it. So we can't always expect to have
to click the start button. Let's keep it working both ways for
now for respin testing, we can drop it once we're sure we're not
doing any testing on F39 any more.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
osbuild is struggling with the pre-release warnings ATM:
https://pagure.io/fedora-iot/issue/57https://github.com/osbuild/images/issues/515
Until that mess is cleaned up we can't really make sensible
assertions for osbuild images, so let's make the check a soft
failure for now (now we know about the bugs, we want to let
the rest of the tests run and not block them on this).
Note for IoT the behaviour has never really been correct (IoT
images never get pre-release warnings), but the logic in this
check matches the wrong behaviour (IoT composes always have
RC- labels even when they're clearly not RCs), so the test
didn't fail. While fixing this in osbuild we might try to get
'correct' behaviour for IoT, and then we'd need to tweak the
logic here.
While we're at it, tweak the implementation a bit; without this
tweak, implementing this 'soft fail if osbuild' behaviour is more
awkward and ugly.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
This PR partly solves the issue #301 when it adds the navigation
testing for Gnome. It uses the keyboard combinations to cycle through
running applications and checks that applications could be switched
accordingly. It also tests that you can switch between workspaces
and that you can move an applications to another workspace.
Somehow these two got completely scrambled, testing the wrong
things on the wrong images. Fix them to match the non-blivet
counterparts, which are correct.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
The worker containers aren’t using systemd-resolved so
get_host_dns() can’t find the dns server causing tests that need
it to fail. Add an alternative place to look for the dns server address
that doesn’t rely on systemd-resolved.
Signed-off-by: Deborah Brouwer <deborah.brouwer@collabora.com>
The silverblue tests are flaky because of
https://github.com/fedora-silverblue/issue-tracker/issues/548 .
The desktop_upgrade_encrypted test is flaky on Rawhide (so, when
booting from F40 initially) since we switched to UEFI, not sure
if it's because of UEFI somehow or just a timing coincidence.
Am going to look into it, but for now this should save lots of
manual restarting.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
This is actually a very useful to wait a little bit before
we try to operate with the started application, especially
if we want to send keys.
Having this wait time here can save us doing this every time,
we start an application.
The mistypes on KDE are bugging me. Let's see if this - mainly
the wait_screen_change, the other just seems like a logical
tweak - helps at all.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
ELN can't boot with Secure Boot enabled currently:
https://github.com/fedora-eln/eln/issues/183
Until that's resolved, let's go back to testing on BIOS (this is
easier than testing on non-SB UEFI for...reasons).
Signed-off-by: Adam Williamson <awilliam@redhat.com>
This essentially inverts the x86_64 machines so that '64bit' is
UEFI and instead of a variant 'uefi' machine we have a variant
'bios' machine that is BIOS. The point is to make UEFI testing
the default. We also enable Secure Boot in the UEFI testing,
and add a test of UEFI fallback booting on various products.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
For some reason we keep getting not-quite matches on this, even
though we added two new needles. Let's drop the match level on
all existing needles as a coping mechanism.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Oops, all other actions pushes need to happen *before* the reboot
action push, or the logic breaks.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
My anaconda patch for ensuring we get an EFI boot manager entry
on installs using bootupd (currently only 'canned', i.e. Atomic,
installs - IoT and Atomic Desktops - are affected) was rejected
and dropped in the latest Rawhide build. It'll probably also be
lost in the next F40 build. So install tests of affected images
have started failing. This is a kinda awkward workaround: on
UEFI canned installs, we check whether it looks like there is no
"Fedora" efibootmgr entry, and if so, we delete the entry for the
optical drive, so hopefully we'll boot via fallback path from
the hard disk on reboot.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Whoops, we can't just use a straight match_has_tag there as we
did another assert in the middle...
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Upstream now sets an alarm with no explicit recurrence inactive
after it is stopped (previously it assumed recurrence every day).
We need the test to handle both behaviours for a while (until
we are no longer testing < 46.0 anywhere).
Signed-off-by: Adam Williamson <awilliam@redhat.com>
gvfs from the GNOME 46 megaupdate needs it. It's been pushed
stable but not included in a compose, yet.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
We now have some images using bootupd, at least Fedora IoT images
from F40 onwards do. These don't have a /etc/default/grub and
don't really intend you to run grub2-mkconfig. As advised at
https://github.com/ostreedev/ostree/pull/3150#issuecomment-1998768240
let's just add our required arguments directly in the BLS snippet
files.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
It's queued for stable but blocked by the freeze, and
FEDORA-2024-9c9174f3dd requires it. Let's just make it a
workaround to clear the other update's tests.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
We changed to building toolbox container images with Kiwi. These
are OCI archives, not docker archives. So we need to call skopeo
appropriately.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Just checking for the package update list is wrong in a couple of
ways:
1. It goes wrong for child tests that inherit the main disk from
the parent test, but not the second disk where the actual update
repo lives. They'll have the package list, but not the repo. So
we should test for both the package list and the repo dir.
2. It goes wrong for side tag tests, because we don't write a
package list (or create an update repo) on that path. So on that
path let's check whether we already created the repo definition
we use on that path.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
The existing needle matches on bits of the keyboard layout
selector under the note and the Help button next to it, for some
reason (I don't recall why). The Help button is gone because we
killed installer help, and the keyboard layout indicator is not
always shown any more, there's no reason to match on it here
that I can recall.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
We got a different console font affecting this needle recently.
It *may* be due to building the ARM minimal disk image (which I
think is the only image whose tests hit this needle) with osbuild,
but anyway, it's not a bug, so we should just accept it.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
https://bugzilla.redhat.com/show_bug.cgi?id=2268505 made it
clear that this is a bit of a hole. We don't test installing the
Silverblue image we build on UEFI, only on BIOS. Add this as a
separate test so we don't uselessly upload a disk image we won't
use for any follow-on tests.
This also adds an anaconda build that fixes a bug in this path
as a workaround for F40, so the test won't fail on all F40
updates.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Now we have F40 backgrounds, we can drop this exemption and have
the test always fail on non-Rawhide again.
Signed-off-by: Adam Williamson <awilliam@redhat.com>