Commit Graph

759 Commits

Author SHA1 Message Date
04c4a50c19
FEATURE: Add DNF_CONTENTDIR override support (#119)
* 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
2022-07-10 16:05:04 -05:00
33e96cdeea
alternate tests for Rocky Linux 9 2022-06-30 21:31:48 -07:00
baba72c1b5
print what is tested 2022-06-30 21:31:19 -07:00
e0f8ad4a42
better splitting of strings 2022-06-30 21:30:34 -07:00
ee3005b8f7
add and use get_code_name() utility function
- remove the undocumented CODENAME test variable
- codenames from https://git.rockylinux.org/staging/rpms/rocky-release/-/blob/r9/code
2022-06-30 21:29:19 -07:00
79621d45dd
fixup whitespace 2022-06-30 18:12:44 -07:00
Al Bowles
c304e7bf76
Update comment 2022-06-19 14:27:03 -05:00
Al Bowles
1e0b82cf94
Handle the missing license screen in 9 2022-06-18 20:45:38 -05:00
akatch
2c427618ac
8.6 release fixes (#92)
* 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>
2022-06-09 18:15:17 -05:00
akatch
ff8ce569c7
Test Suite: install_default on rocky-8.5-[minimal|boot|dvd]-iso-x86_64 (#77)
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
2022-03-31 18:23:01 -05:00
049f5f4ba2
Add needles and code to complete anaconda_help test suite (#76)
* 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
2022-02-03 18:25:03 -06:00
ad00919d13
extend timeouts for Rocky (#71) 2021-12-16 16:57:51 -06:00
33dd37fdea
connect network during boot (#66)
- 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.
2021-12-02 18:18:43 -06:00
Lukas Magauer
44e8a76c56
Fixes multiple tests in regard of the PACKAGE_SETs graphical-server and workstation (#61)
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>
2021-11-11 19:39:34 -06:00
75904407ad
Fixes install_anaconda_text@64bit on rocky-8.4-universal-x86_64 (#56)
* 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
2021-11-10 18:47:10 -06:00
akatch
b5a08825e4
Replace blivet tests with custom GUI tests (#51)
* 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
2021-10-26 08:56:01 -07:00
Lukas Magauer
68818270db
Fix mirrorlist not getting recognized with double apply (#53)
Co-authored-by: lumarel <lumarel@users.noreply.github.com>
2021-10-21 16:46:48 -07:00
Russ Butler
b86506d766
Add aarch64 to templates (#41)
* 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.
2021-10-07 16:26:42 -05:00
be2fc0baed
Needles for _graphical_wait_login allowing English language Gnome environments to Getting Started (#49)
* 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
2021-09-29 19:18:45 -07:00
ddd5bf5f6a
Fixes for server_cockpit_updates@64bit on rocky-8.4-dvd-iso-x86_64 (#47)
* 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
2021-09-29 19:16:17 -07:00
be579e5c60
Fixes for modularity_tests on rocky-8.4-dvd-iso-x86_64 (#46)
* 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
2021-09-23 18:04:25 -05:00
f142b1e9b7
add addition data collection (#45) 2021-09-09 18:12:46 -05:00
Lukas Magauer
4f26a2cd84
Fix install multiple languages (#40)
* 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>
2021-08-26 14:58:46 -05:00
Lukas Magauer
42aa17310c
Fix Network Install selection Needle (#27)
* Fix Network Install selection Needle

* Fix Network install http needle

* Fix mirrorlist URL

* Fix mirrorlist option selection

Co-authored-by: lumarel <lumarel@users.noreply.github.com>
2021-08-24 08:41:44 -05:00
Trevor Cooper
7c2421b353
increase partition count and add test for swap (#15) 2021-08-21 20:39:48 -05:00
d5cd63a7cb wait for anaconda main hub before attempting kdump spoke 2021-08-17 18:21:31 -07:00
6b0e7e8227 fix anaconda_network_enable and related needles 2021-08-17 18:20:11 -07:00
e698d7207d root partition resized size to 12G so change postinstall test to match 2021-08-14 22:59:31 -07:00
6783f0eb9b initial updates for modularity testing (incomplete) 2021-08-14 22:32:07 -07:00
38f1d5171d update disk_custom_resize_lvm and add more partitioning needles 2021-08-14 22:30:36 -07:00
b3f12fef7d add support for release_identification 2021-08-14 22:29:07 -07:00
ba17614f5f incomplete support for cockpit 2021-08-14 22:14:53 -07:00
5f3d7dafd7 support enable and disable of kdump 2021-08-14 22:13:03 -07:00
c90b72f365 always enable network interface 2021-08-14 22:11:53 -07:00
Adam Williamson
5b1d3517fe Open Documents folder on Silverblue
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>
2021-07-29 12:09:34 -07:00
Adam Williamson
b8c58428b0 Don't check for git on CANNED
`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>
2021-07-29 11:19:09 -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
Dan Čermák
4811ad3fae Replace check_shutdown with assert_shutdown
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.
2021-07-21 22:41:08 +00:00
Paul Whalen
146071ca3c Add a timeout to rpm-ostree package removal.
Signed-off-by: Paul Whalen <pwhalen@fedoraproject.org>
2021-07-20 22:42:33 +00:00
Adam Williamson
bc738149ec Try to robustify anaconda_help transition a bit
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>
2021-07-19 12:22:04 -07:00
Adam Williamson
2f4ef74def Avoid a needle duplication in KDE vault test
"show_hidden_icons" is the same thing as "desktop_expand_systray".

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-07-17 12:40:15 -07:00
Adam Williamson
0668357dd7 Fix os_release checks for name change to "Fedora Linux"
A couple of the checks here need updating now we're calling it
"Fedora Linux" not just "Fedora".

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-07-14 14:42:15 -07:00
Paul Whalen
49987a5e41 Extend timeout for podman container test.
Signed-off-by: Paul Whalen <pwhalen@fedoraproject.org>
2021-07-13 17:44:34 +00: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
bc611d6975 Tweak the desktop update loop again to try and be more robust
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>
2021-06-29 10:53:37 -07:00
Adam Williamson
4553a9e43b desktop_login: bit more generous timeout for check_desktop
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>
2021-06-28 16:54:13 -07:00
Adam Williamson
87454c5c98 Simplify KDE anaconda launch double click conditional
The kde-settings update went stable now, so we can just do 'if
KDE and relnum > 33'.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2021-06-23 10:50:56 -07:00
Adam Williamson
6807b54a64 Need to double click anaconda launcher with kde-settings 34.6
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>
2021-06-21 17:10:35 -07:00
Adam Williamson
6a79565afa Fix up KDE 'plasma-disks' test stuff
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>
2021-06-21 15:16:40 -07:00
Adam Williamson
9174472637 Run podman tests on updates
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>
2021-06-21 12:20:09 -07:00