title: [8.6 Release Issues] Test Suite: install_delete_partial and install_custom_gui_lvm_ext4 on rocky 8.6
labels: 'test suite'
assignees: '@akatch'
---
# Description
Running openQA test suite `install_delete_partial` as above throws `Test died: no candidate needle with tag(s) 'anaconda_install_destination_reclaim_space_btn' matched` at module `disk_guided_delete_partial`.
At this stage, the "Reclaim Space" button in the lower right corner of the dialog is disabled.
Additionally, the dialog shows that 5GB will be reclaimed by the steps taken to that point in the test, but installation requires around 9GB. Do we need to reclaim enough space for installation in order to enable that button?
_Yes, the button is enabled when enough space to install is reclaimed._
Just adding HDDSIZEGB=20 to `templates.fif.json` did not increase volume size shown in the dialog. Do we need to recreate the img file?
_Yes, recreating the img file using createhdds.py against a larger size in hdds.json resolved this error._
The Reclaim Space dialog claimed 9.06GB was required to perform installation, and after doubling the size of disk_full_XXX.img we got past the Reclaim Space dialog. However, `_do_install_and_reboot` failed to install citing not enough disk space.
Fixes#80 when merged.
# How Has This Been Tested?
```
# NOTE: was not able to reproduce for install_custom_gui_lvm_ext4
openqa-cli api -X POST isos ISO=Rocky-8.6-x86_64-dvd1.iso ARCH=x86_64 DISTRI=rocky FLAVOR=dvd-iso VERSION=8.6 BUILD=8.6_dvd-iso_$(date +%Y%m%d.%H%M%S).0 TEST=install_custom_gui_lvm_ext4 PACKAGE_SET=graphical-server
openqa-cli api -X POST isos ISO=Rocky-8.6-x86_64-dvd1.iso ARCH=x86_64 DISTRI=rocky FLAVOR=universal VERSION=8.6 BUILD=8.6_universal_$(date +%Y%m%d.%H%M%S).0 TEST=install_delete_partial PACKAGE_SET=graphical-server
```
All tests must pass `_do_install_and_reboot`.
NOTE: These tests will fail at `_console_wait_login` with the issue in #81.
# Checklist:
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [x] I have commented my code, particularly in hard-to-understand areas
- [x] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] Any dependent changes have been merged and published in downstream modules
Merging per testing team conversation meeting.
* Correctly check for default packagesets for each flavor
* FIF updates for default packagesets
- Set DESKTOP=gnome to trigger graphical_wait_login instead of
console_wait_login
- Increase virtual disk size to account for default packagesets
* Correctly check for minimal-iso default packageset
* Updated needles for issue 16
* Update templates.fif.json with package set test suites
Package sets tested per ISO will follow these conventions:
- Test suites will not be duplicated between the boot and dvd ISOs
- All default package sets will be tested against dvd-iso
- Boot ISO will be considered valid if `minimal` package set installs
cleanly
* Do not add updated needle with changed hostname
* remove conflicting/incorrect needles
* mods for ananonda_help test suite
- support Rocky help content in anaconda.pm
* workaround software_selection failure
* add needles for anaconda_help
- updated configuration for boot-iso in templates.fif.json. NOTE: If you
provide GRUB="value" during POST you must include "ip=dhcp" along with
your custom GRUB settings.
- short circuit _anaconda_network_enable.pm to check for connection at
start of test.
- provide needle to detect connected network interface using Network
Spoke icon instead of Installation Source text.
NOTE: While not required with minimal-iso or dvd-iso flavors specifying
GRUB="ip=dhcp" will also connect the network interface at boot and
bypass _anaconda_network_enable.
tcooper confirmed on the call. Merging it.
* Extend product test commands
* Increase disk size for `install_standard_partition_ext4` because some PACKAGE_SETs are too big
* Limit the license acceptance to only run on tests which run for ISO installations
It is unfortunately not that easy to limit this to ISOs due to that the misterous
limit to HDD_1 and not `custom_resize_lvm`
* Make sure that the disk post installs run in a shell
it happens that the previous test ends in the GUI
Co-authored-by: lumarel <lumarel@users.noreply.github.com>
* remove Fedora needles we are replacing
* do not expect VNC vs Text Mode menu during text install
* Rocky has kdump which changes text mode main hub install menu
* enable network and redo software selection
* do not disable password for user
* extend timeout for install
* add needles for install_anaconda_text
* fix console_password_required needles
* Our default partitioning scheme includes swap, so omit these tests
* Remove redundant test suites
The suites removed from this commit are functionally identical to the
test suites with the same name but omitting the word "blivet".
* Add needles for custom partitioning GUI
* Replace install_blivet_lvm_ext4 with install_custom_gui_lvm_ext4
- Add subroutine for adding a partition using the "Custom" GUI
- Replace references to blivet with custom_gui in FIF template
- Define test suite for the "Custom" GUI
* syntax fix
* Needle fixes per feedback from lumarel
* Needle reorg
* Replace mouse actions with keypresses
* A few comments
* Replace blivet_standard_partition suites with custom_gui_standard_partition suites
* Rewrite XFS partitioning suite for custom-gui
* Fix filesystem for swap
* Add test suite and needles for RAID using the custom-gui partitioner
* Make raidlevel parameter less confusing
* Fix needles
* Add aarch64 to templates
* Fix _do_install_and_reboot on aarch64
On aarch64 the _do_install_and_reboot test runs the "consoletty0"
action, which has a command with the string "fedora". This causes the
command to fail with "No such file or directory". This patch changes
"fedora" to "rocky" to which allows _do_install_and_reboot to pass.
* add needles for _graphical_wait_login
* remove install_package_set_kde
* add new test suites and job group to simplify package_set testing
* modify _software_selection for pre-selected graphical-server case
* restore non-Gnome installs to package-set test suite
* add needles for Rocky cockpit_updates test suite
* modify server_cockpit_updates test for Rocky
* remove bad needle for cockpit_autoupdates
* add needles for Rocky server_cockpit_updates test suite
* package_selection needle updates
* canonicalize needles JSON and fix conflict
* updates for modularity_tests
- currently passes when _console_wait_login follows
_do_install_and_reboot
- when _graphical_wait_login is fixed for
PACKAGE_SET={graphical-server|workstation} then
modularity_module_list.pm must be validated
* All generic language updates
* Add japanese needles
* Add arabic needles
* Add french needles
* Add russian needles
* Add right-to-left needles
* More arabic needles
* More french needles
* More japanese needles
* More russian needles
* More generic/english needles
* Add license accept to setup test
Co-authored-by: lumarel <lumarel@users.noreply.github.com>
The open dialog on Silverblue (which is apparently not at all
the same thing as the open dialog on Workstation, though they
look the same) does not default to the Documents folder, so we
have to open it.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
`rpm` doesn't work. I dunno off-hand how you'd install git on
ostree if it wasn't there, so let's just assume it will be.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
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.
The power_off function in desktop_login was not really asserting/checking
whether the VM got turned off. However, os-autoinst supports checking whether
the VM is turned off via assert_shutdown. This is additionally much more useful
than using check_shutdown, which does nothing if the VM is still running.
Wait for a change when clicking the done button in root password
screen (anaconda can pause for a long time there).
Signed-off-by: Adam Williamson <awilliam@redhat.com>
I've seen some failures caused by a sort of race where both
'apply' and 'refresh' needles match at the first assertion, but
openQA "prefers" the 'refresh' match. So we click the 'refresh'
button and *immediately* check_screen for apply, which is still
visible...but by the time we go to click it, it's gone because
the refresh found something new and now it's showing "Download".
This tweak should help, because if we can 'see' both refresh and
apply at the start, we'll just go ahead and click apply, we
won't refresh. The logic becomes a little more obscure, but I'm
not sure I see a fix for that. At least until KDE's tool finally
settles down for two releases in a row and we might be able to
simplify this whole thing.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
It can take some time for first login of a user (especially in
KDE). Test has been failing lately on Rawhide because of this.
It seems until recently we never got a still screen when trying
to log in as Jim - so the effective wait for login to complete
was 60 seconds, 30 seconds for wait_still_screen to time out
then 30 seconds for the actual login needle assertion - but now
we are getting a blank screen for 5 seconds which satisfies
wait_still_screen almost immediately, so effective timeout for
the login process is only 35 seconds, which isn't long enough.
So let's bump the check_desktop timeout to 60 seconds.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
KDE has made it so you need to double-click icons on the desktop
now. Unfortunately this means a clunky conditional at least until
the update goes stable. When F33 is EOL we can reduce it to
just "if kde".
Signed-off-by: Adam Williamson <awilliam@redhat.com>
In #235 we accidentally included an entire disks.pm test that
wasn't meant to be there - the infocenter module test is the
right thing to exercise plasma-disks, there is no standalone
app, running 'disks' just gets you the KDE Partition Manager,
which we already test. So this removes that test and renames a
needle that looks like it's for that test but is actually for
the kinfocenter module, to make this clearer.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
It has been noted that updates have broken podman in the past and
this is a major issue for some users. Let's create a new update
flavor and run the test in it. We'll use the server image as a
base, but it's not really a server test, so I'm giving it its own
flavor so it's not run on updates that we only want to run server
tests on, and we can schedule just this test to run on container-y
updates.
As part of this, we need to install podman before running the
test; for flavors we currently run it on we expect podman to be
preinstalled, but that's not true for the server base image.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
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.
GNOME dropped the g-i-s new user mode in F34, so on a Japanese
install with user created in the installer, you don't get an
input source configured out of the box or on first boot. So
we'll just have to do it manually after booting, before we test
if it works.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Looks like the latest Rawhide got a permanent update notification
for KDE again. F34 is still around, though, so we can't just
revert to the old code, I don't think.
Signed-off-by: Adam Williamson <awilliam@redhat.com>