Compare commits
14 Commits
729796730f
...
d012d31270
Author | SHA1 | Date | |
---|---|---|---|
|
d012d31270 | ||
|
2023172c24 | ||
|
02136a80e1 | ||
|
5b3e90e032 | ||
|
0b8d1a58e0 | ||
|
5acd4ea80b | ||
|
6f0478d4b4 | ||
|
c6fe9743bd | ||
|
d28f520dbf | ||
|
079eecf23c | ||
|
a664c10817 | ||
|
ea8e1f950d | ||
|
2226cea183 | ||
|
fecf4ea595 |
@ -159,10 +159,14 @@ sub post_fail_hook {
|
||||
upload_logs "/var/tmp/imgbuild/program.log", failok => 1;
|
||||
}
|
||||
|
||||
# For update tests, let's do the update package info log stuff,
|
||||
# it may be useful for diagnosing the cause of the failure
|
||||
advisory_get_installed_packages;
|
||||
advisory_check_nonmatching_packages(fatal => 0);
|
||||
if (get_var("ADVISORY_OR_TASK") && get_var("TEST") ne "install_default_update_netinst") {
|
||||
unless (get_var("TEST") eq "support_server" && get_var("VERSION") ne get_var("CURRREL")) {
|
||||
# For update tests, let's do the update package info log stuff,
|
||||
# it may be useful for diagnosing the cause of the failure
|
||||
advisory_get_installed_packages;
|
||||
advisory_check_nonmatching_packages(fatal => 0);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
@ -477,7 +477,6 @@ sub setup_workaround_repo {
|
||||
assert_script_run "mkdir -p /mnt/workarounds_repo";
|
||||
assert_script_run "pushd /mnt/workarounds_repo";
|
||||
my %workarounds = (
|
||||
"35" => [],
|
||||
"36" => [],
|
||||
"37" => [],
|
||||
"38" => [],
|
||||
@ -785,9 +784,6 @@ sub gnome_initial_setup {
|
||||
# except 'language' is never *really* skipped (see above)
|
||||
@nexts = grep { $_ ne 'keyboard' } @nexts;
|
||||
@nexts = grep { $_ ne 'timezone' } @nexts;
|
||||
# 'additional software sources' screen did not display on F28-F34:
|
||||
# https://gitlab.gnome.org/GNOME/gnome-initial-setup/-/issues/59
|
||||
@nexts = grep { $_ ne 'software' } @nexts if ($relnum < 35);
|
||||
}
|
||||
else {
|
||||
# 'timezone' and 'software' are suppressed for the 'existing user'
|
||||
@ -924,11 +920,6 @@ sub anaconda_create_user {
|
||||
wait_still_screen 2;
|
||||
_type_user_password();
|
||||
}
|
||||
# FIXME: this is selected by default from F36 (20210118.n.0) on.
|
||||
# we can drop this block and associated needles entirely on F35 EOL
|
||||
unless (check_screen "anaconda_install_user_creation_admin_selected") {
|
||||
assert_and_click "anaconda_install_user_creation_make_admin";
|
||||
}
|
||||
assert_and_click "anaconda_spoke_done";
|
||||
# since 20170105, we will get a warning here when the password
|
||||
# contains non-ASCII characters. Assume only switched layouts
|
||||
|
@ -1,16 +0,0 @@
|
||||
{
|
||||
"area": [
|
||||
{
|
||||
"type": "match",
|
||||
"height": 21,
|
||||
"ypos": 188,
|
||||
"xpos": 500,
|
||||
"width": 185
|
||||
}
|
||||
],
|
||||
"properties": [],
|
||||
"tags": [
|
||||
"LANGUAGE-arabic",
|
||||
"anaconda_install_user_creation_admin_selected"
|
||||
]
|
||||
}
|
Before Width: | Height: | Size: 63 KiB |
@ -1,16 +0,0 @@
|
||||
{
|
||||
"area": [
|
||||
{
|
||||
"ypos": 214,
|
||||
"type": "match",
|
||||
"xpos": 566,
|
||||
"height": 21,
|
||||
"width": 106
|
||||
}
|
||||
],
|
||||
"properties": [],
|
||||
"tags": [
|
||||
"LANGUAGE-arabic",
|
||||
"anaconda_install_user_creation_make_admin"
|
||||
]
|
||||
}
|
Before Width: | Height: | Size: 64 KiB |
@ -1,16 +0,0 @@
|
||||
{
|
||||
"area": [
|
||||
{
|
||||
"xpos": 354,
|
||||
"height": 21,
|
||||
"ypos": 187,
|
||||
"width": 156,
|
||||
"type": "match"
|
||||
}
|
||||
],
|
||||
"properties": [],
|
||||
"tags": [
|
||||
"LANGUAGE-french",
|
||||
"anaconda_install_user_creation_admin_selected"
|
||||
]
|
||||
}
|
Before Width: | Height: | Size: 60 KiB |
@ -1,16 +0,0 @@
|
||||
{
|
||||
"area": [
|
||||
{
|
||||
"width": 194,
|
||||
"height": 21,
|
||||
"ypos": 187,
|
||||
"xpos": 344,
|
||||
"type": "match"
|
||||
}
|
||||
],
|
||||
"properties": [],
|
||||
"tags": [
|
||||
"LANGUAGE-french",
|
||||
"anaconda_install_user_creation_admin_selected"
|
||||
]
|
||||
}
|
Before Width: | Height: | Size: 57 KiB |
@ -1,17 +0,0 @@
|
||||
{
|
||||
"area": [
|
||||
{
|
||||
"type": "match",
|
||||
"xpos": 343,
|
||||
"height": 21,
|
||||
"width": 264,
|
||||
"ypos": 213
|
||||
}
|
||||
],
|
||||
"properties": [],
|
||||
"tags": [
|
||||
"ENV-DISTRI-fedora",
|
||||
"LANGUAGE-french",
|
||||
"anaconda_install_user_creation_make_admin"
|
||||
]
|
||||
}
|
Before Width: | Height: | Size: 62 KiB |
@ -1,16 +0,0 @@
|
||||
{
|
||||
"area": [
|
||||
{
|
||||
"height": 21,
|
||||
"width": 152,
|
||||
"ypos": 195,
|
||||
"type": "match",
|
||||
"xpos": 360
|
||||
}
|
||||
],
|
||||
"properties": [],
|
||||
"tags": [
|
||||
"LANGUAGE-japanese",
|
||||
"anaconda_install_user_creation_admin_selected"
|
||||
]
|
||||
}
|
Before Width: | Height: | Size: 71 KiB |
@ -1,16 +0,0 @@
|
||||
{
|
||||
"area": [
|
||||
{
|
||||
"width": 194,
|
||||
"height": 21,
|
||||
"ypos": 187,
|
||||
"xpos": 344,
|
||||
"type": "match"
|
||||
}
|
||||
],
|
||||
"properties": [],
|
||||
"tags": [
|
||||
"LANGUAGE-japanese",
|
||||
"anaconda_install_user_creation_admin_selected"
|
||||
]
|
||||
}
|
Before Width: | Height: | Size: 57 KiB |
@ -1,16 +0,0 @@
|
||||
{
|
||||
"area": [
|
||||
{
|
||||
"width": 188,
|
||||
"height": 17,
|
||||
"type": "match",
|
||||
"ypos": 226,
|
||||
"xpos": 384
|
||||
}
|
||||
],
|
||||
"properties": [],
|
||||
"tags": [
|
||||
"LANGUAGE-japanese",
|
||||
"anaconda_install_user_creation_make_admin"
|
||||
]
|
||||
}
|
Before Width: | Height: | Size: 73 KiB |
@ -1,16 +0,0 @@
|
||||
{
|
||||
"area": [
|
||||
{
|
||||
"width": 283,
|
||||
"type": "match",
|
||||
"ypos": 187,
|
||||
"xpos": 248,
|
||||
"height": 21
|
||||
}
|
||||
],
|
||||
"properties": [],
|
||||
"tags": [
|
||||
"LANGUAGE-russian",
|
||||
"anaconda_install_user_creation_admin_selected"
|
||||
]
|
||||
}
|
Before Width: | Height: | Size: 69 KiB |
@ -1,16 +0,0 @@
|
||||
{
|
||||
"area": [
|
||||
{
|
||||
"type": "match",
|
||||
"height": 21,
|
||||
"ypos": 212,
|
||||
"width": 326,
|
||||
"xpos": 354
|
||||
}
|
||||
],
|
||||
"properties": [],
|
||||
"tags": [
|
||||
"LANGUAGE-russian",
|
||||
"anaconda_install_user_creation_make_admin"
|
||||
]
|
||||
}
|
Before Width: | Height: | Size: 70 KiB |
@ -1,16 +0,0 @@
|
||||
{
|
||||
"area": [
|
||||
{
|
||||
"width": 194,
|
||||
"height": 21,
|
||||
"ypos": 187,
|
||||
"xpos": 344,
|
||||
"type": "match"
|
||||
}
|
||||
],
|
||||
"properties": [],
|
||||
"tags": [
|
||||
"LANGUAGE-english",
|
||||
"anaconda_install_user_creation_admin_selected"
|
||||
]
|
||||
}
|
Before Width: | Height: | Size: 57 KiB |
@ -1,17 +0,0 @@
|
||||
{
|
||||
"area": [
|
||||
{
|
||||
"type": "match",
|
||||
"height": 21,
|
||||
"ypos": 212,
|
||||
"width": 194,
|
||||
"xpos": 360
|
||||
}
|
||||
],
|
||||
"properties": [],
|
||||
"tags": [
|
||||
"ENV-DISTRI-fedora",
|
||||
"LANGUAGE-english",
|
||||
"anaconda_install_user_creation_make_admin"
|
||||
]
|
||||
}
|
Before Width: | Height: | Size: 53 KiB |
@ -28,17 +28,11 @@ sub run {
|
||||
# "repo addrepo" is older format from before Fedora 37,
|
||||
# "Add the 'addrepo" is newer format from F37+
|
||||
assert_script_run 'grep "\(repo \|Add the \'\)addrepo.*' . ${addrepourl} . '" /tmp/packaging.log';
|
||||
# ...this line tells us it added the repo called 'addrepo' (<F36)...
|
||||
if (script_run 'grep "\(added\|enabled\) repo: .addrepo." /tmp/packaging.log') {
|
||||
# this is F36+
|
||||
assert_script_run 'grep "Added the ' . "'addrepo'" . '" /tmp/anaconda.log';
|
||||
}
|
||||
# ...and one of these tells us it worked (I hope). This one is <F35...
|
||||
if (script_run 'grep "enabled repo.*nfs" /tmp/packaging.log') {
|
||||
# ...these are F35+
|
||||
assert_script_run 'grep "Load metadata for the ' . "'addrepo'" . '" /tmp/anaconda.log';
|
||||
assert_script_run 'grep "Loaded metadata from.*file:///run/install/addrepo.nfs" /tmp/anaconda.log';
|
||||
}
|
||||
# ...this line tells us it added the repo called 'addrepo'
|
||||
assert_script_run 'grep "Added the \'addrepo\'" /tmp/anaconda.log';
|
||||
# ...and this tells us it worked (I hope).
|
||||
assert_script_run 'grep "Load metadata for the \'addrepo\'" /tmp/anaconda.log';
|
||||
assert_script_run 'grep "Loaded metadata from.*file:///run/install/addrepo.nfs" /tmp/anaconda.log';
|
||||
}
|
||||
}
|
||||
if ($repourl =~ /^hd:/) {
|
||||
@ -58,29 +52,9 @@ sub run {
|
||||
elsif ($repourl) {
|
||||
# there are only three hard problems in software development:
|
||||
# naming things, cache expiry, off-by-one errors...and quoting
|
||||
# we need single quotes (at the perl level) around the start
|
||||
# of this, so the backslashes are not interpreted by perl but
|
||||
# passed through to ultimately be interpreted by 'grep'
|
||||
# itself. We need double quotes around $repourl so that *is*
|
||||
# interpreted by perl. And we need quotes around the entire
|
||||
# expression at the bash level, and single quotes around the
|
||||
# text 'anaconda' at the level of grep, as the string we're
|
||||
# actually matching on literally has 'anaconda' in it.
|
||||
if (script_run 'grep "enabled repo: ' . "'anaconda'.*${repourl}" . '" /tmp/packaging.log') {
|
||||
# in F35+, the "enabled repo" log line is gone, instead
|
||||
# we'll check some log messages from the dnf manager module
|
||||
# that show up in anaconda.log. Can drop the above branch
|
||||
# and only go with this branch after F34 EOL.
|
||||
#
|
||||
# in F36+, the "added repo: " line in packaging.log is
|
||||
# gone too, instead we get "Added the 'XXX' repository"
|
||||
# in anaconda.log
|
||||
if (script_run 'grep "added repo: ' . "'anaconda'.*${repourl}" . '" /tmp/packaging.log') {
|
||||
assert_script_run 'grep "Added the ' . "'anaconda'" . '" /tmp/anaconda.log';
|
||||
}
|
||||
assert_script_run 'grep "Load metadata for the ' . "'anaconda'" . '" /tmp/anaconda.log';
|
||||
assert_script_run 'grep "Loaded metadata from ' . ".*${repourl}" . '" /tmp/anaconda.log';
|
||||
}
|
||||
assert_script_run 'grep "Added the \'anaconda\'" /tmp/anaconda.log';
|
||||
assert_script_run 'grep "Load metadata for the \'anaconda\'" /tmp/anaconda.log';
|
||||
assert_script_run 'grep "Loaded metadata from.*' . ${repourl} . '" /tmp/anaconda.log';
|
||||
}
|
||||
if ($repourl) {
|
||||
# check we don't have an error indicating our repo wasn't used.
|
||||
|
@ -11,9 +11,8 @@ sub _set_root_password {
|
||||
my $root_password = get_var("ROOT_PASSWORD") || "weakpassword";
|
||||
unless (get_var("INSTALLER_NO_ROOT")) {
|
||||
assert_and_click "anaconda_install_root_password";
|
||||
# from anaconda-35.22.1 onwards, we have to click 'enable root
|
||||
# account' before typing the password. For older versions,
|
||||
# clicking this needle does nothing but is harmless
|
||||
# we have to click 'enable root account' before typing the
|
||||
#password
|
||||
assert_and_click "anaconda_install_root_password_screen";
|
||||
# wait out animation
|
||||
wait_still_screen 2;
|
||||
|
@ -74,17 +74,6 @@ sub run {
|
||||
# away
|
||||
wait_still_screen 5;
|
||||
_enter_password($password);
|
||||
# FIXME: workaround RHBZ#2120433 - catch if the login failed
|
||||
# and retry if so
|
||||
my $relnum = get_release_number;
|
||||
if ($relnum > 37 && $desktop eq 'gnome') {
|
||||
unless (check_screen ["getting_started", "apps_menu_button"], 45) {
|
||||
if (check_screen "graphical_login_input") {
|
||||
record_soft_failure "Login failed, probably #2120433 - retrying";
|
||||
_enter_password($password);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# For GNOME, handle initial-setup or welcome tour, unless _WELCOME_DONE
|
||||
|
@ -21,11 +21,9 @@ sub run {
|
||||
elsif (get_var('SUBVARIANT') eq 'Workstation') {
|
||||
$env = 'workstation-product-environment';
|
||||
}
|
||||
# pre-F35 line looks like:
|
||||
# 07:51:39,382 INF modules.payloads.payload.dnf.utils: selected environment: custom-environment
|
||||
# F35+ line looks like:
|
||||
# line looks like:
|
||||
# 07:40:26,614 DBG ui.lib.software: Selecting the 'custom-environment' environment.
|
||||
assert_script_run "egrep '(selected env|Selecting the.*environment)' /tmp/anaconda.log /tmp/packaging.log | tail -1 | grep $env";
|
||||
assert_script_run "grep 'Selecting the.*environment' /tmp/anaconda.log /tmp/packaging.log | tail -1 | grep $env";
|
||||
send_key "ctrl-alt-f6";
|
||||
assert_screen "anaconda_main_hub", 30;
|
||||
return;
|
||||
|
@ -52,9 +52,8 @@ sub run {
|
||||
# we must
|
||||
unless (get_var("DESKTOP") eq "gnome") {
|
||||
assert_and_click "anaconda_install_root_password";
|
||||
# from anaconda-35.22.1 onwards, we have to click 'enable root
|
||||
# account' before typing the password. For older versions,
|
||||
# clicking this needle does nothing but is harmless
|
||||
# we have to click 'enable root account' before typing the
|
||||
# password
|
||||
assert_and_click "anaconda_install_root_password_screen";
|
||||
type_safely "weakadminpassword";
|
||||
send_key "tab";
|
||||
|
@ -142,8 +142,8 @@ sub reboot_system {
|
||||
if (check_screen "system_menu_button") {
|
||||
# In a logged in desktop, we access power options through system menu
|
||||
assert_and_click "system_menu_button";
|
||||
# In KDE since F34, reboot entry is right here, otherwise we need to
|
||||
# enter some kind of power option submenu
|
||||
# In KDE the reboot entry is right here, on GNOME we need to
|
||||
# enter some kind of power option submenu.
|
||||
assert_screen ["power_entry", "reboot_entry"];
|
||||
click_lastmatch;
|
||||
assert_and_click "reboot_entry" if (match_has_tag("power_entry"));
|
||||
@ -160,7 +160,8 @@ sub reboot_system {
|
||||
sub power_off {
|
||||
# Powers-off the machine.
|
||||
assert_and_click "system_menu_button";
|
||||
# in KDE since F34, there's no submenu to access, the button is right here
|
||||
# in KDE, there's no submenu to access, the button is right here,
|
||||
# in GNOME we need the submenu
|
||||
assert_screen ["power_entry", "power_off_entry"];
|
||||
click_lastmatch;
|
||||
assert_and_click "power_off_entry" if (match_has_tag("power_entry"));
|
||||
|
@ -21,7 +21,8 @@ sub run {
|
||||
do_bootloader(postinstall => 0, params => '3');
|
||||
}
|
||||
boot_to_login_screen;
|
||||
# use tty1 to avoid RHBZ #1821499 on F32 Workstation live
|
||||
# tty1 is used here for historic reasons, but it's not hurting
|
||||
# anything and changing it might, so let's leave it...
|
||||
$self->root_console(tty => 1);
|
||||
# ensure we actually have some package updates available
|
||||
prepare_test_packages;
|
||||
|
@ -38,13 +38,7 @@ sub run {
|
||||
my $desktop = get_var("DESKTOP");
|
||||
# Set up some variables to make the test compatible with different desktops.
|
||||
# Defaults are for the Gnome desktop.
|
||||
my $version = get_var("VERSION");
|
||||
# FIXME: When we entirely move to version 36 with all the tests
|
||||
# we will get rid of gedit (which ceased to exist on 36).
|
||||
my $editor = "gnome-text-editor";
|
||||
if ($version <= 35 and $version ne "Rawhide") {
|
||||
$editor = "gedit";
|
||||
}
|
||||
my $viewer = "evince";
|
||||
my $maximize = "super-up";
|
||||
my $term = "gnome-terminal";
|
||||
|
@ -21,23 +21,6 @@ sub run {
|
||||
unless (script_run "rpm-ostree status -b | grep stable") {
|
||||
$rebase = "devel";
|
||||
}
|
||||
|
||||
# FIXME special cases for read-only transition from 36 to 37
|
||||
# we can drop these (revert the whole relevant commit) once
|
||||
# 37 is stable
|
||||
my $orig;
|
||||
if (get_var("CURRREL") eq "36") {
|
||||
if (get_var("VERSION") eq "37") {
|
||||
# rebase to rawhide
|
||||
$rebase = "rawhide";
|
||||
$orig = "devel";
|
||||
}
|
||||
elsif (get_var("VERSION") eq "38") {
|
||||
# rebase to devel
|
||||
$rebase = "devel";
|
||||
$orig = "rawhide";
|
||||
}
|
||||
}
|
||||
# rebase to the appropriate release, arch
|
||||
validate_script_output "rpm-ostree rebase fedora/${rebase}/${arch}/iot", sub { m/systemctl reboot/ }, 300;
|
||||
script_run "systemctl reboot", 0;
|
||||
@ -46,7 +29,12 @@ sub run {
|
||||
$self->root_console(tty => 3);
|
||||
|
||||
# check booted branch to make sure successful rebase
|
||||
validate_script_output "rpm-ostree status -b", sub { m/$rebase/ }, 300;
|
||||
if ($rebase eq "devel") {
|
||||
validate_script_output "rpm-ostree status -b", sub { m/devel/ }, 300;
|
||||
}
|
||||
if ($rebase eq "stable") {
|
||||
validate_script_output "rpm-ostree status -b", sub { m/stable/ }, 300;
|
||||
}
|
||||
|
||||
# rollback and reboot
|
||||
validate_script_output "rpm-ostree rollback", sub { m/systemctl reboot/ }, 300;
|
||||
@ -56,13 +44,10 @@ sub run {
|
||||
$self->root_console(tty => 3);
|
||||
|
||||
# check to make sure rollback successful, also account for branched (devel)
|
||||
if ($orig) {
|
||||
validate_script_output "rpm-ostree status -b", sub { m/$orig/ }, 300;
|
||||
}
|
||||
elsif ($rebase eq "devel") {
|
||||
if ($rebase eq "devel") {
|
||||
validate_script_output "rpm-ostree status -b", sub { m/stable/ }, 300;
|
||||
}
|
||||
elsif ($rebase eq "stable") {
|
||||
if ($rebase eq "stable") {
|
||||
validate_script_output "rpm-ostree status -b", sub { m/rawhide|devel/ }, 300;
|
||||
}
|
||||
}
|
||||
|
@ -60,9 +60,7 @@ sub run {
|
||||
$cannedtag = (split /-/, $build)[-1];
|
||||
}
|
||||
my $name = ucfirst($id);
|
||||
# from F35 onwards, $NAME is "Fedora Linux" not just "Fedora"
|
||||
my $relnum = get_release_number;
|
||||
my $fullname = $relnum > 34 ? $name . " Linux" : $name;
|
||||
my $fullname = $name . " Linux";
|
||||
my $rawrel = get_var("RAWREL", '');
|
||||
# Should be the version number or Rawhide.
|
||||
my $version_id = get_var("VERSION");
|
||||
|
@ -34,10 +34,10 @@ sub run {
|
||||
assert_script_run "systemctl restart firewalld.service";
|
||||
# deploy the server
|
||||
my $args = "-U --auto-forwarders --realm=TEST.OPENQA.FEDORAPROJECT.ORG --domain=test.openqa.fedoraproject.org --ds-password=monkeys123 --admin-password=monkeys123 --setup-dns --reverse-zone=2.16.172.in-addr.arpa --allow-zone-overlap";
|
||||
# FIXME: For upgrades to F>34, we turn off dnssec to avoid hitting
|
||||
# FIXME: For upgrades, we turn off dnssec to avoid hitting
|
||||
# #1999321
|
||||
my $relnum = get_release_number;
|
||||
$args .= ' --no-dnssec-validation' if (get_var("UPGRADE") && $relnum > 34);
|
||||
$args .= ' --no-dnssec-validation' if (get_var("UPGRADE"));
|
||||
|
||||
assert_script_run "ipa-server-install $args", 1200;
|
||||
# enable and start the systemd service
|
||||
|
@ -14,8 +14,7 @@ sub run {
|
||||
# Navigate to the Update screen
|
||||
select_cockpit_update();
|
||||
|
||||
# FIXME Workaround for RHBZ #1765685 - remove after F34 EOL (seems
|
||||
# to be fixed in F35 and F36)
|
||||
# FIXME Workaround for RHBZ #1765685, remove if that is ever fixed
|
||||
sleep 30;
|
||||
|
||||
# Switch on automatic updates
|
||||
|