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

174 Commits

Author SHA1 Message Date
Adam Williamson
5cab5ec565 Move most 'universal' tests to Server-dvd-iso
The 'universal' flavor has been kinda pointless for some time
now. It dates back to the earliest days of openQA, before Pungi
4 was a thing, when composes were very different; we only built
a boot.iso and some live images nightly for Rawhide, these
weren't even formally grouped as a 'compose' at all (fedfind had
to invent the concept). The TCs/RCs had DVD installer images
(not *Server* DVD, at the time, just a universal DVD installer).
We wanted to run some tests on the DVD image if it was available,
but we still wanted to run them for the nightlies, so we invented
a whole mechanism for that - this 'universal' flavor, with some
complicated logic in fedora_openqa which schedules universal on
the 'best available' image it can find in the compose.

All this is functionally obsolete now. All composes we test are
now run through Pungi (except the live respins, but they aren't
relevant here). In current config, the Server DVD is non-failable
on x86_64 and aarch64, which means it will *always be there* -
if it fails to build, the compose itself fails, so we won't test
it. It's failable for ppc64le, but we don't care that much about
ppc64le; I'm fine with these tests just not running if the Server
DVD happens to fail in a ppc64le compose.

As a cherry on top, some of the 'universal' tests aren't really
universal anyway, they fail if you run them on a netinst (off
the top of my head, all the NFS install tests are like this, as
we use the ISO to populate the NFS share on the server end).

So let's just move all the tests that actually need an installer
image to the Server-dvd-iso flavor. Left over in the 'universal'
flavor are upgrade tests, which don't need an ISO at all - they
boot from hard disk images and run an upgrade using repos. We
can change the scheduler logic to be more simple for these, and
just always schedule them, with no ISO attached. We could even
rename this flavor 'upgrade', but it might not be worth it.

One slight complication is that the split happened to be helping
us avoid too many tests in a single support_server cluster; we
have a cluster of five support_server tests on Server-dvd-iso
and five support_server tests on universal. I try to avoid the
clusters getting too big as you need as many worker instances on
at least one worker host as your largest cluster; if you don't
have that many, the cluster's tests simply never get scheduled.
Requiring folks to have at least ten worker instances on one
host to run these tests is a bit of a big ask. So, to handle
that, we create a support_server_2 and have the former universal
tests use that one instead, so we'll have two separate clusters
on Server-dvd-iso now.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-05-03 16:29:38 -07:00
Adam Williamson
0c633e132c Drop 32-bit ARM stuff from templates
We no longer build 32-bit ARM images and we hadn't had a working
setup for testing them for years anyway.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-05-02 17:07:20 -07:00
Lukas Ruzicka
7291e3526e Create a test for Gnome Panel. 2023-04-06 15:50:43 -07:00
Lukáš Růžička
0075780ac5 Create test suite for Fonts. 2023-03-28 15:58:16 -07:00
Adam Williamson
2218c4833e Set empty CANNED for iot_zezere_server
This test runs on the minimal disk image, which is an RPM-based
system, it is not ostree.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2023-03-02 14:03:06 -08:00
Lukas Ruzicka
7ad809339f Add new test for Characters.
This PR adds a small test suite to test the Characters applications.
It displays several different groups of characters and then tries
to copy one of the characters and place it into a text editor.
2023-01-19 17:53:03 -08:00
Adam Williamson
6daf9c36a0 Make rpm-ostree tests generic, run on Silverblue and CoreOS
This makes the two rpm-ostree tests written for IoT - overlaying
and rebasing - work across all rpm-ostree-based flavors we
currently test (IoT, CoreOS and Silverblue) and runs them on
all those flavors.

This requires some other changes. For the Workstation ostree
installer update tests, we have install_default_update_ostree
upload a disk image and run these tests on that image. That means
install_default_update_ostree cannot use a scratch disk (as if
we boot it with two disks but only upload one, the subsequent
tests fail to boot, looking for the missing second disk), but its
specified disk size should be large enough for all updates.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-16 08:44:43 -08:00
Adam Williamson
fdf4e4e757 Put INSTALL variable back for LVM resize tests
These actually *do* need it because they have START_AFTER_TEST
set, but they're still install tests.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-13 12:25:38 -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
f752b4c00a Don't snapshot after wait_login tests (usually)
We currently snapshot after every run of _console_wait_login or
_graphical_wait_login, which means we snapshot *twice* on most
update tests as those modules get run twice. However, we almost
never use those snapshots. Snapshotting takes quite some time,
and hits the disk pretty hard, so we should avoid it unless it
is really needed.

We only have a few modules that are not fatal (and so might use
the snapshots), and most of those don't run after one of these
tests, or run after a later module that's also a milestone. Best
I can tell, only two test suites really need to use a snapshot
from a login test: server_cockpit_updates and modularity_tests.
To handle these and potential future cases, we'll add a new
module that does nothing, but is marked 'milestone', so it will
take a snapshot, and load that test after the login test if the
var LOGIN_SNAPSHOT is set, and set that var for those two suites.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-12-08 09:59:23 -08:00
Adam Williamson
c1f0c65a3e Move some tap job groups to new 'tap2' worker class
This is intended to allow us to split the workload across
multiple tap workers, as right now, sometimes we wind up in a
situation where all non-tap jobs are done and the non-tap
workers are sitting idle, but the poor tap worker has a backlog.
This way the tap jobs for updates can be split across two
worker hosts, which should help out.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-11-25 17:33:31 -08:00
Adam Williamson
8ce76de09f Revert "Retry tests affected by #2119970 three times"
This reverts commit 41d8d5923a. The
bug seems to have magically disappeared, so hopefully we should
not need this any more.
2022-11-25 12:21:41 -08:00
Lukas Ruzicka
d4717ff090 Create test suite for Maps. 2022-11-21 18:17:11 +00:00
Adam Williamson
604da9142e Reduce QEMURAM back to 3G for most cases
Hopefully https://bugzilla.redhat.com/show_bug.cgi?id=2133829
is fully resolved/worked around by now, and we shouldn't need
these any more. We could drop back to 2G but let's just do
3G for now.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-11-18 11:57:38 -08:00
Adam Williamson
a92095e288 Add missing profile from previous commit
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-11-03 10:04:11 -07:00
Adam Williamson
84adf7262a templates: Drop special-casing of Cloud_Base on Rawhide
This was from F35 era when Cloud_Base worked on UEFI on Rawhide
but not F33 or F34. Now F34 is EOL, we can just follow the same
policy for every release (run two tests on both BIOS and UEFI,
the rest only on UEFI).

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-11-03 09:18:28 -07:00
Adam Williamson
f61a01548e Bump QEMURAM to 4G for kde-live-iso flavor
This is getting messy, but even the install_default_upload test
is failing out with 3G now. Let's try putting 4G here so it
reaches that test and see how that goes.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-10-31 10:56:34 -07:00
Adam Williamson
d94ffaa72e Give FreeIPA upgrade tests 3 hours to run
These can take a while.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-10-24 12:53:22 -07:00
Adam Williamson
41d8d5923a Retry tests affected by #2119970 three times
We keep running into 2119970 and it's really a pain restarting
tests manually all the time. So let's just retry the affected
tests three times. Big hammer time!

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-10-20 18:11:41 -07:00
Lukáš Růžička
5ea921b17b Create tests for Gnome Contacts. 2022-10-18 14:22:52 -07:00
Adam Williamson
05c38f3023 Give more desktop update tests 4G of RAM
Looking through more openQA failures I saw other desktop update
tests which were clearly caused by OOM kills, so let's give all
the desktop tests we run on updates 4G for now.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-10-13 10:12:53 +02:00
Adam Williamson
fe383fcec5 Give desktop_browser 4G of RAM
We're seeing a lot of failures recently in desktop_browser caused
by the browser or desktop getting OOM killed. I've filed a bug
on this: https://bugzilla.redhat.com/show_bug.cgi?id=2133829
but we need to try and work around it, having the test failing
constantly is no good. Let's see if 4G of RAM is enough.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-10-13 09:50:22 +02:00
Adam Williamson
baf9c10424 Increase QEMU_MAX_MIGRATION_TIME to avoid incomplete tests
We see tests periodically come up incomplete with this:
"Migrate to file failed, it has been running for more than 240 seconds"
Turns out there's a setting for this, so...let's set it. I don't
think there's really a bug here, just when our workers are busy,
these migrations can take longer than expected.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-10-12 10:35:02 +02:00
Lukas Ruzicka
5d3fc244eb Create the test for system monitor. 2022-10-10 15:14:21 +02:00
Lukas Ruzicka
ba0062e5be Create a test case for Archiver. 2022-09-22 08:59:07 +02:00
Adam Williamson
5b897801bf Bump RAM on x86_64 machines to 3G
Workstation tests on Rawhide are getting OOM killed. Let's see
if this helps. All the other arches have this much already, and
the worker hosts can handle it.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-08-18 13:41:13 -04:00
Lukáš Růžička
9e0ec721a6 Create a new test for Gnome Weather 2022-08-08 18:24:51 -07:00
Lukáš Růžička
c40a35ea62 Add a new test for Calculator. 2022-08-05 11:34:22 -07:00
Lukáš Růžička
48ec73e814 Create a test suite for Nautilus. 2022-07-12 16:01:36 -07:00
Lukáš Růžička
7c1e686d14 Create tests for Help. 2022-06-29 23:06:37 +00:00
Lukáš Růžička
6f00e3fe8a Create tests for Clocks. 2022-06-23 21:41:56 +00:00
Adam Williamson
25f59d86da Bump HDDSIZEGB for more GNOME and KDE products
We have it at 20G for Workstation live, but not for KDE live or
for the update Workstation or KDE products. We just hit an issue
today where anaconda thinks 10G isn't enough space for a KDE
live install after a grub2 update (which I think only bumped
the required space veeery slightly, but enough to throw anaconda
over the limit). Let's just go up to 15G for all GNOME and KDE
cases where we're not at 20G.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-06-08 16:53:47 -07:00
Adam Williamson
c41bcd56de Use std video on ppc64le as virtio is broken (#2070333)
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-03-30 12:51:52 -07:00
Adam Williamson
810ab3777d Try running iot_zezere_server on minimal UEFI image instead
OK, so we can't have parallel tests on different machines, so
we can't have iot_zezere_server on 64bit and iot_zezere_ignition
on uefi. We need both to be on uefi. So, let's try using the
minimal-uefi image that we build for upgrade tests instead. It's
built for -1 (which is the same as CURRREL) on x86_64 and aarch64
so it should be there when we need it.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-03-17 11:12:20 -07:00
Adam Williamson
fd08abf954 Add back the 64bit IoT profile needed for previous commit
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-03-17 10:40:53 -07:00
Adam Williamson
03e87ba8d0 Switch iot_zezere_server back to 64bit not uefi
It boots the 'support' disk image, not the image created by
install_default_upload, and that disk image is only set up for
BIOS boot.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-03-17 10:26:29 -07:00
Adam Williamson
a60f19b5e7 Switch IoT tests to all run on UEFI
It doesn't support BIOS any more...

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-03-01 16:02:21 -08:00
Adam Williamson
4251b7b73a Rename desktop_printing_cups back to desktop_printing
It's best to keep the test name consistent unless we *really*
have to change it; that way the "past runs" history in openQA
still works and the name doesn't change in resultsdb and CI
messages.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-02-10 09:35:50 -08:00
Adam Williamson
ad52e3a94d Add a space to USE_CUPS in templates to match style
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-02-10 09:33:15 -08:00
Lukáš Růžička
9a56adcfd0 Modify Desktop Printing test to use two different methods.
The PR introduces an improved logic to the desktop_printing.pm
that allows to use the USE_CUPS variable in templates to trigger
the installation of cups-pdf prior to the actual test.
The cups-pdf is then used as an alternative PDF printer
instead the built-in Save As PDF method.
2022-02-10 09:35:22 +01:00
Lukáš Růžička
ceaf711f76 Create a test suite for Gnome Text Editor 2022-01-29 00:49:10 +00:00
Adam Williamson
24e3ecb89f Drop gedit application tests
Workstation has replaced gedit with gnome-text-editor in Rawhide,
so this is no longer useful. We will replace it with a test suite
for gnome-text-editor.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-01-18 15:52:40 -08:00
Lukáš Růžička
3a5c499e52 Remove desktop_notifications_live from upgrade test. 2021-12-10 13:01:38 +01:00
Lukáš Růžička
f8e9e10e8a Rename tests and flavours as per review. 2021-12-08 13:38:57 -08:00
Lukáš Růžička
eb99e809f9 Switch on upgrades even for aarch64. 2021-12-08 13:38:57 -08:00
Lukáš Růžička
33b52caded Switch on in all workstation tests. 2021-12-08 13:38:57 -08:00
Lukáš Růžička
e85f09f071 Add a new flavour to test upgrade postinstall tests. 2021-12-08 13:38:57 -08:00
Lukáš Růžička
cda0d0b0d1 Create a test suite for EoG (Image Viewer) 2021-11-18 13:13:59 -08:00
Adam Williamson
4860ad1398 Revert "Stop using virtio video temporarily (#2020438)"
This reverts commit 9dbd614fe4
(and a follow-up commit). The bug has been fixed in the latest
Rawhide kernel, so we can go back to virtio.
2021-11-09 15:52:32 -08:00
Adam Williamson
0519c8ec2c Use virtio graphics for server_cockpit_updates test
With qxl it hits a weird bug where running startx a second time
after snapshot restore tends to crash. This is affecting updates
so let's force it to virtio. Hopefully the kernel build with
virtio fix will succeed so I can just revert all this messing
around soon.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-11-09 08:44:45 -08:00
Adam Williamson
498915d864 Use 'ide-hd' instead of deprecated 'ide-drive' in SATA test
This was deprecated in qemu 4.2, but only actually taken out in
6.1.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-11-08 14:40:47 -08:00
Adam Williamson
9dbd614fe4 Stop using virtio video temporarily (#2020438)
It's totally broken in Rawhide, so let's use qxl or another
fallback temporarily. Hopefully not too many other bugs show up
with this.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-11-08 08:37:20 -08:00
Adam Williamson
53b2afb217 Drop memtest test for now
We dropped memtest from the images. We may replace it with
something better at some point, but until that day, let's drop
this test so it's not uselessly failing all the time.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-09-17 14:42:02 -07:00
Adam Williamson
23c9adac93 Update names of qcow2 base disk images
We're changing these to be named `foo.qcow2` not `foo.img` due
to a change in qemu and os-autoinst to do with backing file
format detection.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-09-10 10:58:08 -07:00
Adam Williamson
803ae7ca57 Add a test of an additional repository using a metalink (#198)
As suggested by @kparal, this adds a test that specifies an
additional repository using a metalink. The repository contains
a single package, 'testpackage', that supplements glibc (so it
should always get installed). The test runs an install then
checks that testpackage got installed.

We also deduplicate a pair of needles which were matching on the
same anaconda UI feature (an "add" button) and use that same
needle in this test.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-08-18 14:03:27 -07:00
Lukáš Růžička
b65f470eee Create basic functions tests for Gedit. 2021-08-12 15:37:37 +02:00
Adam Williamson
05c793179a Add a fingerprint login test (GNOME only) (#223)
This adds a test for fingerprint-based login, as requested by
@benzea in #223. We use the fprintd dummy device to let us
simulate scanning a fingerprint, and check various scenarios
recommended by @benzea.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-08-03 15:21:33 -07:00
Lukáš Růžička
e0d9409c74 Create a test suite for Evince.
This PR fixes issue #188. It adds a test suite to test basic
functionality of Evince and brings the following features:

* test scripts for various Evince functions.
* needles to support the Evince test scripts
* new template variables `TESTPATH` and `POSTINSTALL_LOAD_ALL` (see
  below)
* new logic in `main.py` (see below)

The new variables and the new logic make it easier to create test
suites for post-installation tests. If TESTPATH is used, OpenQA
will take all tests mentioned in POSTINSTALL from that specified
TESTPATH. If both TESTPATH and POSTINSTALL_LOAD_ALL are used, then
OpenQA will run all tests it can find at the TESTPATH location.
If POSTINSTALL and POSTINSTALL_LOAD_ALL are set simultaneously,
then only POSTINSTALL will be taken into account and OpenQA will
only load tests mentioned there.
2021-07-28 08:58:23 +02:00
Adam Williamson
910fbf2c2f Also run Cloud tests on x86_64 UEFI, on Rawhide only
Cloud images are now BIOS/UEFI hybrid in Rawhide (but not F33
or F34), so we want to run the Cloud tests on UEFI as well, but
only on Rawhide.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-07-22 09:58:23 -07:00
Adam Williamson
088dc9d5ff Correct postinstall test name for install_blivet_resize_lvm
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-07-06 10:56:16 -07:00
Lukáš Růžička
6d1d549941 Introduce a resize check and a postinstall test for custom and blivet
tests.

This PR fixes #228.
2021-06-30 11:01:50 +02:00
Adam Williamson
e5229fd969 Run desktop upgrade tests on aarch64 (#220)
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-06-25 10:27:38 -07:00
Lukáš Růžička
395ed61a1a Automate the Anaconda_Save_Traceback_to_Bugzilla_Text test case.
This PR adds a new test that automates the above mentioned test case.
It starts the installation in text mode using the `install_text` test
case, which it interrupts using the Anaconda crash trigger.
When the crash happens, it goes through the process of reporting
the bug to Bugzilla, checks that Bugzilla sends a positive
confirmation of the action, but also performs some REST API
calls to do a proper check and then it closes the bug to clean up.
2021-06-17 16:28:29 -07:00
Lukáš Růžička
b87049217c Add testcase for Memtest. 2021-06-16 18:11:01 +00:00
Lukáš Růžička
c6d443a20f Automate the QA:Testcase_Anaconda_help.
This PR automates the mentioned testcase to test that Help can be
displayed in Anaconda during the installation. It navigates through
the available Help screens and if it can see it, it finishes.

This test runs after `install_default_upload` to override the
installation defaults defined for all primary tests.

Delete a duplicated needle.

Reformat list extensions to make it nicer.

Get rid of wrong export and an empty line.

Delete empty line.

Use _boot_to_anaconda for booting and move subroutine accordingly.

Add variable to templates.fif.json

Delete trailing whitespace.

Fix calling the pretest.

Move help checking to another place.
2021-05-27 21:39:26 +00:00
Adam Williamson
592f50d3c2 Fix Cloud tests to run on correct image
For Cloud, we want to run these tests directly on the disk image
from the compose. But for other flavors, they are run on a disk
image produced by install_default_upload, so the test suites
specify HDD_1. This causes a problem as the value from the test
suite is used as the filename when downloading the image, but
that file name does not change between composes, so instead of
downloading the image to be tested for each compose, we just
wound up downloading it one time and then re-using that same
file every day.

Solving this is a bit tricky for reasons explained in the
fedora_openqa commit, but this is the best option I could think
of. The scheduler has been changed to schedule the downloaded
image as HDD_2_URL, not HDD_1_URL; so now in the templates we just
override the HDD_1 value for the Cloud flavors to "%HDD_2%",
meaning to take the value of HDD_2 (which will be parsed from
HDD_2_URL). We do not actually attach HDD_2 at all, it's only
used to be copied to HDD_1.

We also explicitly set DEPLOY_UPLOAD_TEST to "" for all flavors
(it was only set for one before), just for clarity.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-05-20 13:15:34 -07:00
Adam Williamson
6c5507b174 Add an 'unwanted packages' test, run on Workstation for now (#218)
This adds a test that just fails if any one of a given list of
unwanted packages is installed. This was a request for the
Workstation edition from @catanzaro so I've just implemented it
for Workstation so far, but it's designed to be easily extended
to cover other subvariants too if we want.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-05-03 08:59:46 -07:00
Lukáš Růžička
477d918b64 Add testcase to test the Package_install_remove testcase. 2021-05-01 00:11:43 +02:00
Adam Williamson
b4f3e6ea5a Move install_blivet_resize_lvm, fix install_resize_lvm (#201)
This is the same thing we did for install_resize_lvm, to address
issue #201. We just didn't get around to doing it for the blivet
test yet. We also change the HDDSIZEGB for the parent test to
15GB so the resizing stuff actually works in both resize tests;
ever since we changed this the install_resize_lvm test has not
been working properly, it hasn't actually been doing any resize.
Also drop the swap partition stuff from that test as it's for
sure no longer needed.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-04-30 11:10:21 -07:00
Lukáš Růžička
d82eae850d Add UEFI versions of cust_btrfs_pres_home and custom_std_part. 2021-03-25 11:28:36 +01:00
Lukáš Růžička
866a8efa72 Add a new testcase to test creation of LVM with ext4 using Blivet.
This PR adds a test that uses the Blivet interface to create an LVM
layout with ext4 filesystem as well as a postinstall test that checks
that the LVM layout has been created correctly.
2021-02-19 13:42:20 -08:00
Lukáš Růžička
a868b1241a Create Blivet standard partitioning with ext4 testcase.
This PR introduces a test case that uses the Blivet partitioning
tool to create a standard partitioning layout with / and /boot
(and specific partitions for UEFI and ARM64) using ext4 as
the selected filesystem.

It also adds a postinstallation test to check that the partitions
have been created correctly.
2021-02-19 13:27:45 -08:00
Adam Williamson
154328e590 Bump KDE package set install disk size to 15GiB
KDE netinst installs more packages than before, now, so it needs
more space. After investigation this is not a bug, it is intended.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-02-08 13:28:08 -08:00
Lukáš Růžička
ecca7d3c01 Create testcase to recreate Btrfs layout using Blivet and preserve home.
This PR uses the Anaconda Blivet partitioning to recreate a partition
layout while preserving the content of the /home subvolume.

It also adds the postinstall test to check that the home has been
preserved.
2021-01-28 09:51:32 +01:00
Lukáš Růžička
ba90c70c8a Add several tests to test QA:Testcase_partitioning_custom_btrfs_preserve_home.
This PR adds the `install_btrfs_upload` to install the btrfs based
image, the `btrfs_preserve_home_extras` to prepare and test the data
on the home partition, as well as the `custom_btrfs_preserve_home` that
uses the preinstalled btrfs image and uses its current partitioning to
preserve the home partition and the data on it.
2021-01-20 16:50:39 +00:00
Adam Williamson
7631dd3c4d Update root-user-crypted-net kickstart usages
Use the copy in the group dir (not jskladan's), which I've fixed
to not use "install" any more.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-01-19 15:03:48 -08:00
Adam Williamson
014492cbc5 Update templates for new disk_ks image version
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-01-19 14:44:10 -08:00
Adam Williamson
940848b628 Use 'test.openqa.fedoraproject.org' not 'domain.local'
Using .local is apparently Bad Form because it's reserved for
mDNS. However there doesn't appear to be any particularly Good
Form for what to call a test domain you never want to exist
outside of a closed system, apparently. Sigh. Let's try this.
Includes a bump to disk_ks version because the kickstarts on
that image also need to have this change applied.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-12-15 14:40:30 -08:00
Adam Williamson
a5c0f7ffbb Enable several desktop tests on Workstation aarch64 disk image
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-12-04 11:55:33 -08:00
Lukáš Růžička
6b0de3aec3 Add an installation test using Standard partitioning with ext4.
This PR add the installation test which uses Standard partitioning
with an ext4 filesystem to cover one of the new requirements as
described in issue #202.

Fixed after a review
2020-11-27 11:48:31 +01:00
Lukáš Růžička
5718c7f1d4 Add an installation test using LVM partitioning as asset for resize tests.
When Fedora went to BTRFS as a default, we lost the LVM based image to
run LVM resize tests with.

This PR introduces the `install_lvm.pm` installation test that creates
an LVM based qcow2 image to be used by follow-up tests.
2020-11-26 09:55:19 +01:00
Adam Williamson
46d89432ae Drop ext3 tests
Per https://pagure.io/fedora-qa/issue/650 , we dropped these
from the wiki, and I agree with @kparal that it doesn't make much
sense to run them any more.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-11-06 11:29:26 -08:00
Adam Williamson
886a22c35f arm image deploy: don't use HDD_1
Setting HDD_1 to %HDD_2% is broken in recent openQA:
https://github.com/os-autoinst/openQA/pull/3309#issuecomment-721906935
I count this as a bug, but we can solve it like this, I think -
we don't actually need to set this test up so carefully to only
have the disk image as HDD_1 and no HDD_2, we can actually just
let the disk image be HDD_2 and have an empty disk as HDD_1 and
the test still works, qemu will boot from the second disk and we
can upload it and everything's fine. So let's just go with that.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-11-04 11:42:13 -08:00
Adam Williamson
b284e79250 Use PREVREL image not CURRREL for resize_lvm tests (#201)
These tests assume the desktop base disk image has an ext4-on-LVM
layout, but from F33 onwards it doesn't, it uses btrfs as that's
the new distro default.

We need a proper fix for this, but for now, just make the test
use the F32 disk image. This buys us six months at least.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-11-02 16:09:03 -08:00
Adam Williamson
a569af3ed0 Enable more base tests on aarch64 images, fix up priorities a bit
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-10-30 15:57:24 -07:00
Adam Williamson
9deb95a876 Unify base tests across normal, Cloud and arm
We have variant versions of several of the base tests which exist
to account for differences in required variable settings to run
essentially the same test in different situations. By twiddling
the variables a little, including inventing a new variable
defined in the flavors and substituted into the test suites so
the same test suite can have a different START_AFTER_TEST when
run on different flavors, I think we can unite them all and make
this a lot simpler.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-10-30 15:27:25 -07:00
Adam Williamson
92d52c6ac6 Split VNC client steps in two for aarch64 timing issue
So, there's a problem with how we figure out the NetworkManager
connection to use in setup_tap_static: it expects the first
connection in the list to be the right one, but this is only
actually true so long as it's *active*. When we're in the tap
case, it's usually not going to actually *work* out of the box
on boot (or else we wouldn't need setup_tap_static at all...),
so some time after boot, NetworkManager gives up on it and marks
it as inactive. And after that, setup_tap_static won't work any
more.

I never noticed this as a problem before because usually we do
setup_tap_static before that point. But it seems in the vnc
client tests, on aarch64, desktop boot and login is slow enough
that by the time we switch to a VT and try to setup the network,
we're very close to that cutoff, and sometimes miss it.

This, I hope, avoids the problem by doing the network setup in
that test before we deal with the desktop login, then doing the
desktop login, then doing the actual VNC bits.

The alternative here would be to figure out a better way to do
setup_tap_static, but I can't.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-10-30 12:39:52 -07:00
Adam Williamson
c7a1b94c84 Enable aarch64 disk image testing, related fixes
This sets us up to test the release-blocking aarch64 disk images
(Minimal, Server and Workstation). It also allows for testing
armhfp disk images on aarch64 worker hosts (though my testing of
that isn't going too well so far), and fixes the initial-setup
handling for a change upstream ('use password' is now the default
so we don't need to choose it). We rewire disk image deployment
test loading to work through the generic loader code rather than
using ENTRYPOINT, as it allows us to more gracefully handle
graphical (Workstation) vs. console (Server, Minimal), moving
the code for handling console initial-setup to a helper function
just like the code for gnome-initial-setup and having _console_
wait_login call it when appropriate. We also tweak desktop_vt a
bit because now we need to switch from a console running as test
to a desktop, which breaks the assumption that the highest
numbered session of user test is the desktop...

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-10-30 12:39:49 -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
47b4b3af60 Bump disk_ks version to 4
We changed the FreeIPA kickstarts for 172.16 network.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-08-24 12:39:17 -07:00
Adam Williamson
232b224d22 Add 'with swap' tests, drop swap parts from other tests (#180)
In Fedora 33, we generally no longer include a disk-based swap
partition by default (instead swap-on-ZRAM is used, see
https://fedoraproject.org/wiki/Changes/SwapOnZRAM ). This tweaks
our tests to account for that. In tests that aren't to do with
swap at all, we stop including a swap partition in order to be
closer to the default layout. We replace the old _no_swap blivet
and custom tests with _with_swap tests that, as the name implies,
*explicitly include* a swap partition, and adjust the postinstall
test to check the disk swap partition is there.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-08-11 15:09:33 -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
3a28227155 Bump QEMURAM on install_updates_nfs too
It's hitting the 2GiB crash bug as well.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-07-17 16:25:52 -07:00
Adam Williamson
6a46dfc2a4 Try harder to apply that 3GiB RAM setting
Seems it may need the magic override...

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-07-17 12:44:54 -07:00
Adam Williamson
ee3c27ccb7 Bump netinst images to 3GiB RAM (#1856514)
Since systemd-246~rc1-1.fc33, network install images crash if
booted with only 2GiB of RAM. No-one seems to be fixing this
as a matter of urgency, so let's just bump the tests to 3GiB at
least for now.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-07-17 09:25:57 -07:00
Adam Williamson
18aa1fbb80 Temporarily remove no_swap tests
https://fedoraproject.org/wiki/Changes/SwapOnZRAM changes things
a lot here. No swap on disk is now the default case, making these
tests obsolete. We'll probably want to test various different
configurations around ZRAM swap instead - ZRAM swap *and* disk
swap, disk swap only, all swaps disabled - but that's a more
complex change that will need a ticket and a PR, so for now let's
just cut these tests.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-07-16 15:38:31 -07:00
Adam Williamson
919c88f48f Add QA:Testcase_Clevis test (TPM-based automatic decryption)
This adds a test that automates
https://fedoraproject.org/wiki/QA:Testcase_Clevis. It requires
os-autoinst-4.6-18.20200623git5038d8c or newer, and a worker
host in the 'tpm' class which is set up to have an instance of
swtpm running at /tmp/mytpmX , where X is the worker instance
number, for each worker. The Fedora infrastructure ansible
plays have been updated to handle this via an instantiated
systemd service, which other instances can also adopt.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-07-02 16:44:55 -07:00
Adam Williamson
8d64da5f8d base tests: run on Cloud, add one on aarch64, clean up priorities
This adds new variant test suites for several of the base tests
to run them on Cloud disk images. We can't re-use the existing
test suites because they have `START_AFTER_TEST` defined and
there's no viable way to undefine it (there are things you can
do to override the value, but you can't just unset it). Also
add a stray test we weren't running on aarch64, and correct some
priorities.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2020-06-17 16:55:01 -07:00