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>
|
@ -101,6 +101,13 @@ It is very important, therefore, that needles have the correct tags. Any needle
|
|||
|
||||
Note that tags of the form `ENV-INSTLANG-(anything)` are useless artefacts and should be removed.
|
||||
|
||||
## Contribution Approval Guidelines
|
||||
|
||||
Use the following guidelines to understand the level of approval needed to merge your contributions:
|
||||
1. Pull requests and merge requests to a non-default branch will require 1 visual inspection approval to merge, provided all comments are addressed and no requests for followup are outstanding.
|
||||
1. Pull and merge requests to the default branch (`rocky`) require 2 visual inspection approvals **and** 1 openQA automation approval to merge.
|
||||
1. When public openQA infrastructure is available, all pull requests should initiate an openQA build, which must pass prior to merge.
|
||||
|
||||
## Licensing and credits
|
||||
|
||||
The contents of this repository are available under the GPL, version 3 or any later version. A copy is included as COPYING. Note that we do not include the full GPL header in every single test file as they are quite short and this would waste a lot of space.
|
||||
|
|
|
@ -5,7 +5,7 @@ BUILD_NAME=$1
|
|||
|
||||
printf '# Build%s\n' "$BUILD_NAME"
|
||||
printf "| Test | Result | Failure Reason | Effort to Fix | Notes |\n"
|
||||
printf "| ---- | ------ | -------------- | ------------ | ----- |\n"
|
||||
printf "| ---- | ------ | -------------- | ------------- | ----- |\n"
|
||||
|
||||
openqa-cli api -X GET jobs build="$BUILD_NAME" | \
|
||||
jq -r '.jobs[] | {name,result} | join(" | ") | split("-") | last' | \
|
||||
|
|
16
main.pm
|
@ -175,14 +175,6 @@ sub load_install_tests() {
|
|||
autotest::loadtest "tests/_anaconda_network_enable.pm";
|
||||
}
|
||||
|
||||
## Kdump
|
||||
if (get_var('ANACONDA_KDUMP') eq 'enabled') {
|
||||
autotest::loadtest "tests/_anaconda_kdump_enable.pm";
|
||||
}
|
||||
else {
|
||||
autotest::loadtest "tests/_anaconda_kdump_disable.pm";
|
||||
}
|
||||
|
||||
## Installation source
|
||||
if (get_var('MIRRORLIST_GRAPHICAL') || get_var("REPOSITORY_GRAPHICAL")) {
|
||||
autotest::loadtest "tests/install_source_graphical.pm";
|
||||
|
@ -215,6 +207,14 @@ sub load_install_tests() {
|
|||
autotest::loadtest "tests/disk_guided_encrypted.pm";
|
||||
}
|
||||
|
||||
## Kdump
|
||||
if (get_var('ANACONDA_KDUMP') eq 'enabled') {
|
||||
autotest::loadtest "tests/_anaconda_kdump_enable.pm";
|
||||
}
|
||||
else {
|
||||
autotest::loadtest "tests/_anaconda_kdump_disable.pm";
|
||||
}
|
||||
|
||||
# Start installation, set user & root passwords, reboot
|
||||
# install and reboot phase is loaded automatically every time (except when KICKSTART is set)
|
||||
autotest::loadtest "tests/_do_install_and_reboot.pm";
|
||||
|
|
|
@ -0,0 +1,17 @@
|
|||
{
|
||||
"area": [
|
||||
{
|
||||
"xpos": 912,
|
||||
"ypos": 510,
|
||||
"width": 90,
|
||||
"height": 38,
|
||||
"type": "match"
|
||||
}
|
||||
],
|
||||
"properties": [],
|
||||
"tags": [
|
||||
"ENV-DISTRI-rocky",
|
||||
"LANGUAGE-english",
|
||||
"anaconda_install_destination_delete_all_btn_selected"
|
||||
]
|
||||
}
|
After Width: | Height: | Size: 38 KiB |
|
@ -0,0 +1,17 @@
|
|||
{
|
||||
"area": [
|
||||
{
|
||||
"xpos": 878,
|
||||
"ypos": 615,
|
||||
"width": 124,
|
||||
"height": 37,
|
||||
"type": "match"
|
||||
}
|
||||
],
|
||||
"properties": [],
|
||||
"tags": [
|
||||
"ENV-DISTRI-rocky",
|
||||
"LANGUAGE-english",
|
||||
"anaconda_install_destination_reclaim_space_btn_selected"
|
||||
]
|
||||
}
|
After Width: | Height: | Size: 38 KiB |
|
@ -0,0 +1,17 @@
|
|||
{
|
||||
"area": [
|
||||
{
|
||||
"type": "match",
|
||||
"height": 19,
|
||||
"width": 105,
|
||||
"ypos": 210,
|
||||
"xpos": 56
|
||||
}
|
||||
],
|
||||
"properties": [],
|
||||
"tags": [
|
||||
"ENV-DISTRI-rocky",
|
||||
"ENV-FLAVOR-server",
|
||||
"anaconda_install_source_selected"
|
||||
]
|
||||
}
|
After Width: | Height: | Size: 33 KiB |
|
@ -0,0 +1,31 @@
|
|||
{
|
||||
"area": [
|
||||
{
|
||||
"width": 33,
|
||||
"type": "match",
|
||||
"ypos": 410,
|
||||
"height": 33,
|
||||
"xpos": 721
|
||||
},
|
||||
{
|
||||
"xpos": 242,
|
||||
"height": 34,
|
||||
"ypos": 199,
|
||||
"type": "match",
|
||||
"width": 41
|
||||
},
|
||||
{
|
||||
"height": 37,
|
||||
"ypos": 337,
|
||||
"xpos": 244,
|
||||
"width": 34,
|
||||
"type": "match"
|
||||
}
|
||||
],
|
||||
"properties": [],
|
||||
"tags": [
|
||||
"ENV-DISTRI-rocky",
|
||||
"LANGUAGE-english",
|
||||
"anaconda_main_hub"
|
||||
]
|
||||
}
|
BIN
needles/anaconda/main_hub/rocky-anaconda_main_hub-20220514.png
Normal file
After Width: | Height: | Size: 58 KiB |
16
needles/cockpit/rocky-autoupdate_planned_day-20220514.json
Normal file
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"area": [
|
||||
{
|
||||
"width": 73,
|
||||
"type": "match",
|
||||
"height": 21,
|
||||
"xpos": 429,
|
||||
"ypos": 477
|
||||
}
|
||||
],
|
||||
"properties": [],
|
||||
"tags": [
|
||||
"ENV-DISTRI-rocky",
|
||||
"autoupdate_planned_day"
|
||||
]
|
||||
}
|
BIN
needles/cockpit/rocky-autoupdate_planned_day-20220514.png
Normal file
After Width: | Height: | Size: 47 KiB |
16
needles/cockpit/rocky-autoupdate_planned_time-20220514.json
Normal file
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"area": [
|
||||
{
|
||||
"xpos": 531,
|
||||
"ypos": 475,
|
||||
"width": 40,
|
||||
"height": 21,
|
||||
"type": "match"
|
||||
}
|
||||
],
|
||||
"properties": [],
|
||||
"tags": [
|
||||
"ENV-DISTRI-rocky",
|
||||
"autoupdate_planned_time"
|
||||
]
|
||||
}
|
BIN
needles/cockpit/rocky-autoupdate_planned_time-20220514.png
Normal file
After Width: | Height: | Size: 47 KiB |
16
needles/cockpit/rocky-cockpit_main-20220514.json
Normal file
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"area": [
|
||||
{
|
||||
"type": "match",
|
||||
"height": 27,
|
||||
"width": 213,
|
||||
"ypos": 548,
|
||||
"xpos": 262
|
||||
}
|
||||
],
|
||||
"properties": [],
|
||||
"tags": [
|
||||
"ENV-DISTRI-rocky",
|
||||
"cockpit_main"
|
||||
]
|
||||
}
|
BIN
needles/cockpit/rocky-cockpit_main-20220514.png
Normal file
After Width: | Height: | Size: 76 KiB |
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"area": [
|
||||
{
|
||||
"xpos": 639,
|
||||
"ypos": 241,
|
||||
"width": 172,
|
||||
"height": 30,
|
||||
"type": "match"
|
||||
}
|
||||
],
|
||||
"properties": [],
|
||||
"tags": [
|
||||
"ENV-DISTRI-rocky",
|
||||
"cockpit_updates_updated"
|
||||
]
|
||||
}
|
After Width: | Height: | Size: 42 KiB |
16
needles/cockpit/rocky-logs_entry-systemd-20220514.json
Normal file
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"area": [
|
||||
{
|
||||
"ypos": 374,
|
||||
"xpos": 944,
|
||||
"type": "match",
|
||||
"height": 15,
|
||||
"width": 52
|
||||
}
|
||||
],
|
||||
"properties": [],
|
||||
"tags": [
|
||||
"ENV-DISTRI-rocky",
|
||||
"cockpit_logs_entry"
|
||||
]
|
||||
}
|
BIN
needles/cockpit/rocky-logs_entry-systemd-20220514.png
Normal file
After Width: | Height: | Size: 93 KiB |
16
needles/cockpit/rocky-logs_entry_detail-20220514.json
Normal file
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"area": [
|
||||
{
|
||||
"height": 14,
|
||||
"type": "match",
|
||||
"width": 145,
|
||||
"ypos": 745,
|
||||
"xpos": 263
|
||||
}
|
||||
],
|
||||
"properties": [],
|
||||
"tags": [
|
||||
"ENV-DISTRI-rocky",
|
||||
"cockpit_logs_detail"
|
||||
]
|
||||
}
|
BIN
needles/cockpit/rocky-logs_entry_detail-20220514.png
Normal file
After Width: | Height: | Size: 69 KiB |
16
needles/cockpit/rocky-services_detail-20220514.json
Normal file
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"area": [
|
||||
{
|
||||
"ypos": 585,
|
||||
"xpos": 263,
|
||||
"type": "match",
|
||||
"height": 28,
|
||||
"width": 133
|
||||
}
|
||||
],
|
||||
"properties": [],
|
||||
"tags": [
|
||||
"ENV-DISTRI-rocky",
|
||||
"cockpit_services_detail"
|
||||
]
|
||||
}
|
BIN
needles/cockpit/rocky-services_detail-20220514.png
Normal file
After Width: | Height: | Size: 67 KiB |
|
@ -57,6 +57,7 @@
|
|||
"settings": {
|
||||
"GRUB": "ip=dhcp",
|
||||
"+QEMURAM": 3072,
|
||||
"HDDSIZEGB": "15",
|
||||
"TEST_TARGET": "ISO"
|
||||
},
|
||||
"version": "*"
|
||||
|
@ -68,6 +69,7 @@
|
|||
"settings": {
|
||||
"GRUB": "ip=dhcp",
|
||||
"+QEMURAM": 3072,
|
||||
"HDDSIZEGB": "15",
|
||||
"TEST_TARGET": "ISO"
|
||||
},
|
||||
"version": "*"
|
||||
|
@ -79,6 +81,7 @@
|
|||
"settings": {
|
||||
"+QEMURAM": 3072,
|
||||
"DEPLOY_UPLOAD_TEST": "install_minimal_upload",
|
||||
"HDDSIZEGB": "15",
|
||||
"TEST_TARGET": "ISO"
|
||||
},
|
||||
"version": "*"
|
||||
|
@ -90,6 +93,7 @@
|
|||
"settings": {
|
||||
"+QEMURAM": 3072,
|
||||
"DEPLOY_UPLOAD_TEST": "install_minimal_upload",
|
||||
"HDDSIZEGB": "15",
|
||||
"TEST_TARGET": "ISO"
|
||||
},
|
||||
"version": "*"
|
||||
|
@ -100,6 +104,7 @@
|
|||
"flavor": "dvd-iso",
|
||||
"settings": {
|
||||
"DEPLOY_UPLOAD_TEST": "install_default_upload",
|
||||
"HDDSIZEGB": "15",
|
||||
"TEST_TARGET": "ISO"
|
||||
},
|
||||
"version": "*"
|
||||
|
@ -110,6 +115,7 @@
|
|||
"flavor": "dvd-iso",
|
||||
"settings": {
|
||||
"DEPLOY_UPLOAD_TEST": "install_default_upload",
|
||||
"HDDSIZEGB": "15",
|
||||
"TEST_TARGET": "ISO"
|
||||
},
|
||||
"version": "*"
|
||||
|
@ -119,6 +125,7 @@
|
|||
"distri": "rocky",
|
||||
"flavor": "package-set",
|
||||
"settings": {
|
||||
"HDDSIZEGB": "15",
|
||||
"TEST_TARGET": "ISO"
|
||||
},
|
||||
"version": "*"
|
||||
|
@ -128,6 +135,7 @@
|
|||
"distri": "rocky",
|
||||
"flavor": "package-set",
|
||||
"settings": {
|
||||
"HDDSIZEGB": "15",
|
||||
"TEST_TARGET": "ISO"
|
||||
},
|
||||
"version": "*"
|
||||
|
@ -137,6 +145,7 @@
|
|||
"distri": "rocky",
|
||||
"flavor": "universal",
|
||||
"settings": {
|
||||
"HDDSIZEGB": "15",
|
||||
"TEST_TARGET": "ISO"
|
||||
},
|
||||
"version": "*"
|
||||
|
@ -146,6 +155,7 @@
|
|||
"distri": "rocky",
|
||||
"flavor": "universal",
|
||||
"settings": {
|
||||
"HDDSIZEGB": "15",
|
||||
"TEST_TARGET": "ISO"
|
||||
},
|
||||
"version": "*"
|
||||
|
@ -348,7 +358,6 @@
|
|||
"settings": {
|
||||
"DESKTOP": "gnome",
|
||||
"ENCRYPT_PASSWORD": "weakpassword",
|
||||
"HDDSIZEGB": "15",
|
||||
"LANGUAGE": "arabic",
|
||||
"PACKAGE_SET": "workstation",
|
||||
"POSTINSTALL": "_console_login",
|
||||
|
@ -367,7 +376,6 @@
|
|||
"settings": {
|
||||
"DESKTOP": "gnome",
|
||||
"ENCRYPT_PASSWORD": "weakpassword",
|
||||
"HDDSIZEGB": "15",
|
||||
"INPUT_METHOD": "1",
|
||||
"LANGUAGE": "japanese",
|
||||
"PACKAGE_SET": "workstation",
|
||||
|
@ -386,6 +394,7 @@
|
|||
},
|
||||
"settings": {
|
||||
"PARTITIONING": "custom_gui_lvm_ext4",
|
||||
"HDDSIZEGB": "15",
|
||||
"POSTINSTALL": "disk_custom_lvm_ext4_postinstall",
|
||||
"ROOT_PASSWORD": "weakpassword"
|
||||
}
|
||||
|
@ -434,7 +443,6 @@
|
|||
"settings": {
|
||||
"DESKTOP": "gnome",
|
||||
"ENCRYPT_PASSWORD": "weakpassword",
|
||||
"HDDSIZEGB": "15",
|
||||
"LANGUAGE": "russian",
|
||||
"PACKAGE_SET": "workstation",
|
||||
"POSTINSTALL": "_console_login",
|
||||
|
@ -455,7 +463,6 @@
|
|||
},
|
||||
"settings": {
|
||||
"DESKTOP": "gnome",
|
||||
"HDDSIZEGB": "15",
|
||||
"PACKAGE_SET": "default",
|
||||
"POSTINSTALL": "_collect_data"
|
||||
}
|
||||
|
@ -513,6 +520,7 @@
|
|||
"settings": {
|
||||
"HDDMODEL": "ide-hd",
|
||||
"HDD_1": "disk_full_mbr.img",
|
||||
"HDDSIZEGB": "20",
|
||||
"PARTITIONING": "guided_delete_all"
|
||||
}
|
||||
},
|
||||
|
@ -524,7 +532,6 @@
|
|||
"settings": {
|
||||
"DESKTOP": "gnome",
|
||||
"ENCRYPT_PASSWORD": "weakpassword",
|
||||
"HDDSIZEGB": "15",
|
||||
"LANGUAGE": "french",
|
||||
"NO_UEFI_POST": "1",
|
||||
"PACKAGE_SET": "workstation",
|
||||
|
@ -553,7 +560,6 @@
|
|||
"rocky-dvd-iso-x86_64-*-uefi": 41
|
||||
},
|
||||
"settings": {
|
||||
"HDDSIZEGB": "15",
|
||||
"PARTITIONING": "custom_lvm_ext4",
|
||||
"ROOT_PASSWORD": "weakpassword",
|
||||
"STORE_HDD_1": "disk_%FLAVOR%_%MACHINE%.qcow2"
|
||||
|
@ -566,7 +572,6 @@
|
|||
"rocky-dvd-iso-x86_64-*-uefi": 31
|
||||
},
|
||||
"settings": {
|
||||
"HDDSIZEGB": "15",
|
||||
"PARTITIONING": "custom_standard_partition_ext4",
|
||||
"ROOT_PASSWORD": "weakpassword"
|
||||
}
|
||||
|
@ -655,7 +660,6 @@
|
|||
"settings": {
|
||||
"DESKTOP": "gnome",
|
||||
"ENCRYPT_PASSWORD": "weakpassword",
|
||||
"HDDSIZEGB": "15",
|
||||
"PACKAGE_SET": "graphical-server",
|
||||
"POSTINSTALL": "_console_login",
|
||||
"ROOT_PASSWORD": "weakpassword",
|
||||
|
@ -672,7 +676,6 @@
|
|||
"settings": {
|
||||
"DESKTOP": "gnome",
|
||||
"ENCRYPT_PASSWORD": "weakpassword",
|
||||
"HDDSIZEGB": "15",
|
||||
"PACKAGE_SET": "workstation",
|
||||
"POSTINSTALL": "_console_login",
|
||||
"ROOT_PASSWORD": "weakpassword",
|
||||
|
@ -759,7 +762,7 @@
|
|||
},
|
||||
"settings": {
|
||||
"CDMODEL": "scsi-cd",
|
||||
"GRUB": "inst.updates=https://rockypeople.org/groups/qa/updates/updates-openqa.img",
|
||||
"GRUB": "inst.updates=https://fedorapeople.org/groups/qa/updates/updates-openqa.img",
|
||||
"HDDMODEL": "scsi-hd",
|
||||
"SCSICONTROLLER": "virtio-scsi-pci",
|
||||
"TEST_UPDATES": "1"
|
||||
|
@ -818,6 +821,7 @@
|
|||
},
|
||||
"settings": {
|
||||
"HDD_1": "disk_freespace_%PART_TABLE_TYPE%.img",
|
||||
"HDDSIZEGB": "20",
|
||||
"PARTITIONING": "guided_free_space",
|
||||
"ROOT_PASSWORD": "weakpassword"
|
||||
}
|
||||
|
|
|
@ -18,6 +18,7 @@ sub run {
|
|||
|
||||
assert_and_click "anaconda_install_destination_reclaim_space_delete_btn";
|
||||
|
||||
# If this fails with a disabled button, we didn't reclaim enough space to perform installation
|
||||
assert_and_click "anaconda_install_destination_reclaim_space_btn";
|
||||
|
||||
# Anaconda hub
|
||||
|
|
|
@ -18,19 +18,33 @@ sub run {
|
|||
if (get_var('TEST_UPDATES')){
|
||||
assert_screen "anaconda_install_destination_updates", 30;
|
||||
}
|
||||
# Here the self identification test code is placed.
|
||||
my $branched = get_var('VERSION');
|
||||
if ($identification eq 'true' or $branched ne "Rawhide") {
|
||||
# Here the self identification test code is placed.
|
||||
my $branched = get_var('VERSION');
|
||||
if ($identification eq 'true' or $branched ne "Rawhide") {
|
||||
check_top_bar(); # See utils.pm
|
||||
# we don't check version or pre-release because here those
|
||||
# texts appear on the banner which makes the needling
|
||||
# complex and fragile (banner is different between variants,
|
||||
# and has a gradient so for RTL languages the background color
|
||||
# differs; pre-release text is also translated)
|
||||
}
|
||||
}
|
||||
|
||||
assert_and_click "anaconda_spoke_done";
|
||||
|
||||
# if we get the "Reclaim Space" dialog, hit enter to reclaim space
|
||||
if (check_screen("anaconda_install_destination_reclaim_space_btn", 5)) {
|
||||
# hit enter to reclaim space
|
||||
send_key "ret";
|
||||
|
||||
# select 'delete all' button and hit enter to delete existing data
|
||||
send_key_until_needlematch("anaconda_install_destination_delete_all_btn_selected", "tab", 5);
|
||||
send_key "ret";
|
||||
|
||||
# send tab 5 times to select "Reclaim Space" button
|
||||
send_key_until_needlematch("anaconda_install_destination_reclaim_space_btn_selected", "tab", 5);
|
||||
send_key "ret";
|
||||
}
|
||||
|
||||
# Anaconda hub
|
||||
assert_screen "anaconda_main_hub", 300; #
|
||||
|
||||
|
|