This MR provides a very, very basic test suite for the Slurm packages
built by the HPC SIG. It checks the following:
- Necessary packages for a single-node Slurm instance install
successfully from the SIG/HPC repository
- A job can be scheduled and executed to completion
- A job can be scheduled and then cancelled
```
./fifloader.py --clean --load templates.fif.json
openqa-cli api -X POST isos ISO=Rocky-8.8-x86_64-dvd.iso ARCH=x86_64 DISTRI=rocky FLAVOR=dvd-iso VERSION=8.8 CURRREL=8 BUILD=-${date +%Y%d%m}.0-slurm-8.8 TEST=slurm22,slurm23
openqa-cli api -X POST isos ISO=Rocky-9.2-x86_64-dvd.iso ARCH=x86_64 DISTRI=rocky FLAVOR=dvd-iso VERSION=9.2 CURRREL=9 BUILD=-${date +%Y%d%m}.0-slurm-9.2 TEST=slurm22,slurm23
```
- [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
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] Any dependent changes have been merged and published in downstream modules
- refs in templates.fif.json and code changed (typically hostnames in multi-worker tests)
- refs in documentation left for historical / context purposes
* add dnf_contentdir library function and implement is sample tests
* Short circuit auto addition of _console_wait_login for tests without DESKTOP
* support use of REPOSITORY_GRAPHICAL and ADD_REPOSITORY_GRAPHICAL test variables
* deprecate addition of dnf_contentdir lib function
* create and use get_version_major utility function
* resolve mismatch of login type caused by incorrect template entries
* add and use _staging_repos_enable post-install test
* add install_package_set_* tests only to package-set flavor
* fix variable re-declaration warning/error
* add rocky-getting-started-tour needles
* release rocky-repos content require switch from mirrorlist to baseurl
* implement DNF_CONTENTDIR swap as post-install action before reboot/login
* temp disable _staging_repos_enable
* incomplete fix for _graphical_wait_login
- get_release_number is used heavily in our openQA but makes no sense in
Rocky. Multiple possible solutions but this one allows
`_graphical_wait_login` to pass. NEEDS_WORK
* Handle the "reclaim space" dialog
Adds handling for the "Reclaim Space" dialog, which can appear after the
user clicks "Done" in the partitioning spoke.
* Fix indentations
* Set default HDD size to 15GB
* Remove redundant HDDSIZEGB definitions
* Add more GiBs
* Workaround for #82
* Needle with new security policy spoke icon
* Add new needles to fix cockpit tests in 8.6
* Add contribution SOP to README
* Words
* Script fixes (#99)
* Increment version
* Fix this header
* Fix URL for updates.img (#98)
* ---
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
* Add new needle to mitigate the changed default
for install source on the network from http to https
Co-authored-by: lumarel <lumarel@users.noreply.github.com>
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
- 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>
* 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
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.
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>
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.
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.
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>
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>
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>
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.
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.
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>
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.
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.