mirror of
https://github.com/rocky-linux/os-autoinst-distri-rocky.git
synced 2024-10-04 07:34:09 +00:00
enforce standard coding on all Perl files
This commit is contained in:
parent
7184b13708
commit
488bbe07a0
@ -28,8 +28,8 @@ sub select_disks {
|
||||
);
|
||||
my %iscsi = %{$args{iscsi}};
|
||||
# Anaconda hub
|
||||
assert_screen "anaconda_main_hub", 300; #
|
||||
# Damn animation delay can cause bad clicks here too - wait for it
|
||||
assert_screen "anaconda_main_hub", 300; #
|
||||
# Damn animation delay can cause bad clicks here too - wait for it
|
||||
sleep 1;
|
||||
assert_and_click "anaconda_main_hub_install_destination";
|
||||
|
||||
@ -150,7 +150,7 @@ sub custom_blivet_add_partition {
|
||||
assert_and_click "anaconda_blivet_size_unit";
|
||||
assert_and_click "anaconda_blivet_size_unit_mib";
|
||||
|
||||
send_key "shift-tab"; # input is one tab back from unit selection listbox
|
||||
send_key "shift-tab"; # input is one tab back from unit selection listbox
|
||||
|
||||
# size input can contain whole set of different values, so we can't match it with needle
|
||||
type_safely $args{size} . "\n";
|
||||
@ -178,7 +178,7 @@ sub custom_blivet_add_partition {
|
||||
sub custom_add_partition {
|
||||
# Used to add partition on Rocky custom-gui partitioning screen
|
||||
# in Anaconda. Should be called when custom-gui is displayed and free space is selected.
|
||||
# You can pass device type for partition (needle tagged anaconda_custom_devicetype_$devicetype should exist), size of that partition in MiBs, desired filesystem of that partition
|
||||
# You can pass device type for partition (needle tagged anaconda_custom_devicetype_$devicetype should exist), size of that partition in MiBs, desired filesystem of that partition
|
||||
# (anaconda_custom_part_fs_$filesystem should exist) and mountpoint of that partition (e. g. string "/boot").
|
||||
my %args = (
|
||||
devicetype => "",
|
||||
@ -368,7 +368,7 @@ sub get_full_repo {
|
||||
if ($repourl !~ m/^(nfs|hd:)/) {
|
||||
# Everything variant doesn't exist for modular composes atm,
|
||||
# only Server
|
||||
$repourl .= "/".get_var("ARCH")."/os";
|
||||
$repourl .= "/" . get_var("ARCH") . "/os";
|
||||
}
|
||||
return $repourl;
|
||||
}
|
||||
@ -483,7 +483,7 @@ sub report_bug_text {
|
||||
my $timestamp = time();
|
||||
#
|
||||
# First, collect the credentials.
|
||||
my $login = get_var("BUGZILLA_LOGIN");
|
||||
my $login = get_var("BUGZILLA_LOGIN");
|
||||
my $password = get_var("_SECRET_BUGZILLA_PASSWORD");
|
||||
my $apikey = get_var("_SECRET_BUGZILLA_APIKEY");
|
||||
# Choose item 1 - Report the bug.
|
||||
|
@ -21,7 +21,7 @@ sub post_fail_hook {
|
||||
if (check_screen "anaconda_error_report", 10) {
|
||||
assert_and_click "anaconda_error_report";
|
||||
$has_traceback = 1;
|
||||
} elsif (check_screen "anaconda_text_error", 10) { # also for text install
|
||||
} elsif (check_screen "anaconda_text_error", 10) { # also for text install
|
||||
type_string "1\n";
|
||||
$has_traceback = 1;
|
||||
}
|
||||
@ -73,21 +73,21 @@ sub post_fail_hook {
|
||||
}
|
||||
|
||||
if ($dracut) {
|
||||
upload_logs "/run/initramfs/rdsosreport.txt", failok=>1;
|
||||
upload_logs "/run/initramfs/rdsosreport.txt", failok => 1;
|
||||
# that's all that's really useful, so...
|
||||
return;
|
||||
}
|
||||
|
||||
upload_logs "/tmp/X.log", failok=>1;
|
||||
upload_logs "/tmp/anaconda.log", failok=>1;
|
||||
upload_logs "/tmp/packaging.log", failok=>1;
|
||||
upload_logs "/tmp/storage.log", failok=>1;
|
||||
upload_logs "/tmp/syslog", failok=>1;
|
||||
upload_logs "/tmp/program.log", failok=>1;
|
||||
upload_logs "/tmp/dnf.log", failok=>1;
|
||||
upload_logs "/tmp/dnf.librepo.log", failok=>1;
|
||||
upload_logs "/tmp/dnf.rpm.log", failok=>1;
|
||||
upload_logs "/tmp/dbus.log", failok=>1;
|
||||
upload_logs "/tmp/X.log", failok => 1;
|
||||
upload_logs "/tmp/anaconda.log", failok => 1;
|
||||
upload_logs "/tmp/packaging.log", failok => 1;
|
||||
upload_logs "/tmp/storage.log", failok => 1;
|
||||
upload_logs "/tmp/syslog", failok => 1;
|
||||
upload_logs "/tmp/program.log", failok => 1;
|
||||
upload_logs "/tmp/dnf.log", failok => 1;
|
||||
upload_logs "/tmp/dnf.librepo.log", failok => 1;
|
||||
upload_logs "/tmp/dnf.rpm.log", failok => 1;
|
||||
upload_logs "/tmp/dbus.log", failok => 1;
|
||||
|
||||
if ($has_traceback) {
|
||||
# Upload Anaconda traceback logs
|
||||
@ -131,7 +131,7 @@ sub root_console {
|
||||
# tty3 has a shell on all f31+ installer and live images
|
||||
send_key "ctrl-alt-f3";
|
||||
}
|
||||
console_login(user=>"root", timeout=>$args{timeout});
|
||||
console_login(user => "root", timeout => $args{timeout});
|
||||
}
|
||||
|
||||
1;
|
||||
|
@ -32,7 +32,7 @@ sub convert_to_bz_timestamp {
|
||||
|
||||
sub get_newest_bug {
|
||||
# This subroutine makes an API call to Bugzilla and
|
||||
# fetches the newest bug that have been created.
|
||||
# fetches the newest bug that have been created.
|
||||
# This will be the bug created by Anaconda in this
|
||||
# test run.
|
||||
my ($timestamp, $login) = @_;
|
||||
|
@ -24,7 +24,7 @@ sub start_cockpit {
|
||||
assert_screen "cockpit_login", 60;
|
||||
# this happened on early Modular Server composes...
|
||||
record_soft_failure "Unbranded Cockpit" if (match_has_tag "cockpit_login_unbranded");
|
||||
wait_still_screen(stilltime=>5, similarity_level=>45);
|
||||
wait_still_screen(stilltime => 5, similarity_level => 45);
|
||||
if ($login) {
|
||||
type_safely "root";
|
||||
wait_screen_change { send_key "tab"; };
|
||||
@ -57,6 +57,6 @@ sub check_updates {
|
||||
my $logfile = shift;
|
||||
sleep 2;
|
||||
my $checkresult = script_run "dnf check-update > $logfile";
|
||||
upload_logs "$logfile", failok=>1;
|
||||
return($checkresult);
|
||||
upload_logs "$logfile", failok => 1;
|
||||
return ($checkresult);
|
||||
}
|
||||
|
@ -41,7 +41,7 @@ sub x11_start_program {
|
||||
send_key "alt-f2";
|
||||
assert_screen "desktop_runner";
|
||||
type_string $program, 20;
|
||||
sleep 5; # because of KDE dialog - SUSE guys are doing the same!
|
||||
sleep 5; # because of KDE dialog - SUSE guys are doing the same!
|
||||
send_key "ret", 1;
|
||||
}
|
||||
|
||||
|
@ -44,7 +44,7 @@ sub start_webui {
|
||||
disable_firefox_studies;
|
||||
type_string "startx /usr/bin/firefox -width 1024 -height 768 https://ipa001.test.openqa.fedoraproject.org\n";
|
||||
assert_screen ["freeipa_webui_login", $user_screen], 60;
|
||||
wait_still_screen(stilltime=>5, similarity_level=>45);
|
||||
wait_still_screen(stilltime => 5, similarity_level => 45);
|
||||
# softfail on kerberos ticket bugs meaning we get auto-logged in
|
||||
# as the requested user when we don't expect to be
|
||||
if (match_has_tag $user_screen) {
|
||||
|
@ -16,7 +16,7 @@ sub root_console {
|
||||
# Switch to a default or specified TTY and log in as root.
|
||||
my $self = shift;
|
||||
my %args = (
|
||||
tty => 1, # what TTY to login to
|
||||
tty => 1, # what TTY to login to
|
||||
@_);
|
||||
if (get_var("SERIAL_CONSOLE")) {
|
||||
# select the first virtio terminal, for now we assume we can
|
||||
@ -27,7 +27,7 @@ sub root_console {
|
||||
# For normal terminal emulation, use key combo to reach a tty
|
||||
send_key "ctrl-alt-f$args{tty}";
|
||||
}
|
||||
console_login; # Do the login.
|
||||
console_login; # Do the login.
|
||||
}
|
||||
|
||||
sub post_fail_hook {
|
||||
@ -43,7 +43,7 @@ sub post_fail_hook {
|
||||
assert_script_run "dhclient";
|
||||
}
|
||||
else {
|
||||
$self->root_console(tty=>6);
|
||||
$self->root_console(tty => 6);
|
||||
# fix up keyboard layout, if we failed before the test did this
|
||||
# itself; if it's already been done, should be safe, will just
|
||||
# fail and carry on
|
||||
@ -88,7 +88,7 @@ sub post_fail_hook {
|
||||
}
|
||||
|
||||
if ($dracut) {
|
||||
upload_logs "/run/initramfs/rdsosreport.txt", failok=>1;
|
||||
upload_logs "/run/initramfs/rdsosreport.txt", failok => 1;
|
||||
# that's all that's really useful, so...
|
||||
return;
|
||||
}
|
||||
@ -125,14 +125,14 @@ sub post_fail_hook {
|
||||
}
|
||||
|
||||
# Sometimes useful for diagnosing FreeIPA issues
|
||||
upload_logs "/etc/nsswitch.conf", failok=>1;
|
||||
upload_logs "/etc/nsswitch.conf", failok => 1;
|
||||
|
||||
if (get_var("FLAVOR") eq "updates-everything-boot-iso") {
|
||||
# for installer creation test
|
||||
script_run "df -h";
|
||||
upload_logs "/root/imgbuild/pylorax.log", failok=>1;
|
||||
upload_logs "/root/imgbuild/lorax.log", failok=>1;
|
||||
upload_logs "/root/imgbuild/program.log", failok=>1;
|
||||
upload_logs "/root/imgbuild/pylorax.log", failok => 1;
|
||||
upload_logs "/root/imgbuild/lorax.log", failok => 1;
|
||||
upload_logs "/root/imgbuild/program.log", failok => 1;
|
||||
}
|
||||
|
||||
if (get_var("TEST") eq "live_build") {
|
||||
@ -149,10 +149,10 @@ sub post_fail_hook {
|
||||
}
|
||||
}
|
||||
|
||||
# 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);
|
||||
# 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);
|
||||
|
||||
1;
|
||||
|
||||
|
@ -11,7 +11,7 @@ use utils;
|
||||
our @EXPORT = qw(parse_module_list is_listed);
|
||||
|
||||
# This subroutine takes the output from the dnf module list command
|
||||
# and deletes all unnecessary stuff and returns an array of hash
|
||||
# and deletes all unnecessary stuff and returns an array of hash
|
||||
# references where each hash consists of (module, stream, profile).
|
||||
# The subroutine only recognizes one profile but it is enough
|
||||
# for the sake of the modularity testing.
|
||||
@ -37,7 +37,7 @@ sub parse_module_list {
|
||||
sub is_listed {
|
||||
my ($module, $stream, $listref) = @_;
|
||||
my $found = 0;
|
||||
foreach (@{ $listref }) {
|
||||
foreach (@{$listref}) {
|
||||
if ($_->{module} eq $module and $_->{stream} eq $stream) {
|
||||
$found = 1;
|
||||
}
|
||||
|
154
lib/utils.pm
154
lib/utils.pm
@ -22,9 +22,9 @@ sub run_with_error_check {
|
||||
# by using 'unless' and 'expect_not_found=>1' here we avoid
|
||||
# the web UI showing each failure to see the error message as
|
||||
# a 'failed match'
|
||||
die "Error screen appeared" unless (wait_serial($error_screen, timeout=>5, expect_not_found=>1));
|
||||
die "Error screen appeared" unless (wait_serial($error_screen, timeout => 5, expect_not_found => 1));
|
||||
$func->();
|
||||
die "Error screen appeared" unless (wait_serial($error_screen, timeout=>5, expect_not_found=>1));
|
||||
die "Error screen appeared" unless (wait_serial($error_screen, timeout => 5, expect_not_found => 1));
|
||||
}
|
||||
else {
|
||||
die "Error screen appeared" if (check_screen $error_screen, 5);
|
||||
@ -40,7 +40,7 @@ sub type_safely {
|
||||
type_string($string, wait_screen_change => 3, max_interval => 20);
|
||||
# similarity level 45 as there will commonly be a flashing
|
||||
# cursor and the default level (47) is slightly too tight
|
||||
wait_still_screen(stilltime=>2, similarity_level=>45);
|
||||
wait_still_screen(stilltime => 2, similarity_level => 45);
|
||||
}
|
||||
|
||||
# high-level 'type this string extremely safely and rather slow'
|
||||
@ -50,7 +50,7 @@ sub type_very_safely {
|
||||
type_string($string, wait_screen_change => 1, max_interval => 1);
|
||||
# similarity level 45 as there will commonly be a flashing
|
||||
# cursor and the default level (47) is slightly too tight
|
||||
wait_still_screen(stilltime=>5, similarity_level=>45);
|
||||
wait_still_screen(stilltime => 5, similarity_level => 45);
|
||||
}
|
||||
|
||||
sub get_release_number {
|
||||
@ -60,13 +60,13 @@ sub get_release_number {
|
||||
my $version = get_var("VERSION");
|
||||
my $rawrel = get_var("RAWREL", "Rawhide");
|
||||
return $rawrel if ($version eq "Rawhide");
|
||||
return $version
|
||||
return $version;
|
||||
}
|
||||
|
||||
sub get_version_major {
|
||||
my $version = get_var('VERSION');
|
||||
my $version_major = substr($version, 0, index($version, q/./));
|
||||
return $version_major
|
||||
my $version = get_var('VERSION');
|
||||
my $version_major = substr($version, 0, index($version, q/./));
|
||||
return $version_major;
|
||||
}
|
||||
|
||||
sub get_code_name {
|
||||
@ -74,11 +74,11 @@ sub get_code_name {
|
||||
my $version = get_var('VERSION');
|
||||
my $version_major = get_version_major;
|
||||
|
||||
given($version_major){
|
||||
when ('9') { $code_name = 'Blue Onyx'; }
|
||||
when ('10') { $code_name = 'Smoky Quartz'; }
|
||||
when ('11') { $code_name = 'Lavender Calcite'; }
|
||||
default{
|
||||
given ($version_major) {
|
||||
when ('9') { $code_name = 'Blue Onyx'; }
|
||||
when ('10') { $code_name = 'Smoky Quartz'; }
|
||||
when ('11') { $code_name = 'Lavender Calcite'; }
|
||||
default {
|
||||
$code_name = 'Green Obsidian';
|
||||
}
|
||||
}
|
||||
@ -98,9 +98,9 @@ sub desktop_vt {
|
||||
# stop as soon as any command fails, so we use ||: to make the
|
||||
# first grep return 0 even if it matches nothing
|
||||
eval { $xout = script_output ' loginctl | grep test ||:; ps -e | egrep "(gnome-session|Xwayland|Xorg)" | grep -o tty[0-9]' };
|
||||
my $tty = 1; # default
|
||||
my $tty = 1; # default
|
||||
while ($xout =~ /tty(\d)/g) {
|
||||
$tty = $1; # most recent match is probably best
|
||||
$tty = $1; # most recent match is probably best
|
||||
}
|
||||
send_key "ctrl-alt-f${tty}";
|
||||
# work around https://gitlab.gnome.org/GNOME/gnome-software/issues/582
|
||||
@ -129,7 +129,7 @@ sub boot_to_login_screen {
|
||||
$args{timeout} //= 300;
|
||||
if (testapi::is_serial_terminal) {
|
||||
# For serial console, just wait for the login prompt
|
||||
unless (wait_serial "login:", timeout=>$args{timeout}) {
|
||||
unless (wait_serial "login:", timeout => $args{timeout}) {
|
||||
die "No login prompt shown on serial console.";
|
||||
}
|
||||
}
|
||||
@ -140,14 +140,14 @@ sub boot_to_login_screen {
|
||||
# The following is true for non-serial console.
|
||||
my $count = 5;
|
||||
while (check_screen("login_screen", 3) && $count > 0) {
|
||||
sleep 5;
|
||||
$count -= 1;
|
||||
sleep 5;
|
||||
$count -= 1;
|
||||
}
|
||||
assert_screen "login_screen", $args{timeout};
|
||||
if (match_has_tag "graphical_login") {
|
||||
wait_still_screen 10, 30;
|
||||
assert_screen "login_screen";
|
||||
}
|
||||
assert_screen "login_screen", $args{timeout};
|
||||
if (match_has_tag "graphical_login") {
|
||||
wait_still_screen 10, 30;
|
||||
assert_screen "login_screen";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -174,7 +174,7 @@ sub desktop_switch_layout {
|
||||
# if already selected, we're good
|
||||
return if (check_screen "${environment}_layout_${layout}", 3);
|
||||
# otherwise we need to switch
|
||||
my $switcher = "alt-shift"; # anaconda
|
||||
my $switcher = "alt-shift"; # anaconda
|
||||
$switcher = "super-spc" if $environment eq 'gnome';
|
||||
# KDE? not used yet
|
||||
send_key $switcher;
|
||||
@ -188,7 +188,7 @@ sub desktop_switch_layout {
|
||||
sub _console_login_finish {
|
||||
# The check differs according to the console used.
|
||||
if (testapi::is_serial_terminal) {
|
||||
unless (wait_serial("-bash-.*[#\$]", timeout=>5, expect_not_found=>1)) {
|
||||
unless (wait_serial("-bash-.*[#\$]", timeout => 5, expect_not_found => 1)) {
|
||||
record_soft_failure "It looks like profile sourcing failed";
|
||||
}
|
||||
}
|
||||
@ -219,7 +219,7 @@ sub console_login {
|
||||
# enable a new proper login based on the user variable.
|
||||
if (get_var("SERIAL_CONSOLE")) {
|
||||
# Check for the usual prompt.
|
||||
if (wait_serial("~\][#\$]", timeout=>5, quiet=>1)) {
|
||||
if (wait_serial("~\][#\$]", timeout => 5, quiet => 1)) {
|
||||
type_string "logout\n";
|
||||
# Wait a bit to let the logout properly finish.
|
||||
sleep 10;
|
||||
@ -233,7 +233,7 @@ sub console_login {
|
||||
# Let's perform a simple login test. This is the same as
|
||||
# whoami, but has the advantage of existing in installer env
|
||||
assert_script_run "id -un";
|
||||
unless (wait_serial $args{user}, timeout=>5) {
|
||||
unless (wait_serial $args{user}, timeout => 5) {
|
||||
die "Logging onto the serial console has failed.";
|
||||
}
|
||||
}
|
||||
@ -392,8 +392,8 @@ sub do_bootloader {
|
||||
# in SLOF usb-xhci driver failed sometimes in powerpc
|
||||
type_safely " $args{params}";
|
||||
}
|
||||
save_screenshot; # for debug purpose
|
||||
# ctrl-X boots from grub editor mode
|
||||
save_screenshot; # for debug purpose
|
||||
# ctrl-X boots from grub editor mode
|
||||
send_key "ctrl-x";
|
||||
# return boots all other cases
|
||||
send_key "ret";
|
||||
@ -515,7 +515,7 @@ sub _repo_setup_compose {
|
||||
assert_script_run 'dnf config-manager --set-disabled updates-testing updates';
|
||||
# script_run returns the exit code, so 'unless' here means 'if the file exists'
|
||||
unless (script_run 'test -f /etc/yum.repos.d/fedora-updates-modular.repo') {
|
||||
assert_script_run 'dnf config-manager --set-disabled updates-testing-modular updates-modular';
|
||||
assert_script_run 'dnf config-manager --set-disabled updates-testing-modular updates-modular';
|
||||
}
|
||||
# we use script_run here as the rawhide and modular repo files
|
||||
# won't always exist and we don't want to bother testing or
|
||||
@ -525,9 +525,9 @@ sub _repo_setup_compose {
|
||||
script_run "sed -i -e 's,^metalink,#metalink,g' -e 's,^mirrorlist,#mirrorlist,g' -e 's,^#baseurl.*basearch,baseurl=${location}/Modular/\$basearch,g' -e 's,^#baseurl.*source,baseurl=${location}/Modular/source,g' /etc/yum.repos.d/{fedora-modular,fedora-rawhide-modular}.repo", 0;
|
||||
|
||||
# this can be used for debugging if something is going wrong
|
||||
# unless (script_run 'pushd /etc/yum.repos.d && tar czvf yumreposd.tar.gz * && popd') {
|
||||
# upload_logs "/etc/yum.repos.d/yumreposd.tar.gz";
|
||||
# }
|
||||
# unless (script_run 'pushd /etc/yum.repos.d && tar czvf yumreposd.tar.gz * && popd') {
|
||||
# upload_logs "/etc/yum.repos.d/yumreposd.tar.gz";
|
||||
# }
|
||||
}
|
||||
|
||||
sub _repo_setup_updates {
|
||||
@ -538,9 +538,9 @@ sub _repo_setup_updates {
|
||||
my $currrel = get_var("CURRREL", "0");
|
||||
repos_mirrorlist();
|
||||
# this can be used for debugging repo config if something is wrong
|
||||
# unless (script_run 'pushd /etc/yum.repos.d && tar czvf yumreposd.tar.gz * && popd') {
|
||||
# upload_logs "/etc/yum.repos.d/yumreposd.tar.gz";
|
||||
# }
|
||||
# unless (script_run 'pushd /etc/yum.repos.d && tar czvf yumreposd.tar.gz * && popd') {
|
||||
# upload_logs "/etc/yum.repos.d/yumreposd.tar.gz";
|
||||
# }
|
||||
if ($version > $currrel) {
|
||||
# Disable updates-testing so other bad updates don't break us
|
||||
# this will do nothing on upgrade tests as we're on a stable
|
||||
@ -651,11 +651,11 @@ sub console_initial_setup {
|
||||
# Set timezone
|
||||
type_string "2\n";
|
||||
wait_still_screen 5;
|
||||
type_string "1\n"; # Set timezone
|
||||
type_string "1\n"; # Set timezone
|
||||
wait_still_screen 5;
|
||||
type_string "1\n"; # Europe
|
||||
type_string "1\n"; # Europe
|
||||
wait_still_screen 5;
|
||||
type_string "37\n"; # Prague
|
||||
type_string "37\n"; # Prague
|
||||
wait_still_screen 7;
|
||||
|
||||
# Set root password
|
||||
@ -671,14 +671,14 @@ sub console_initial_setup {
|
||||
# Create user
|
||||
type_string "5\n";
|
||||
wait_still_screen 5;
|
||||
type_string "1\n"; # create new
|
||||
type_string "1\n"; # create new
|
||||
wait_still_screen 5;
|
||||
type_string "3\n"; # set username
|
||||
type_string "3\n"; # set username
|
||||
wait_still_screen 5;
|
||||
type_string get_var("USER_LOGIN", "test");
|
||||
send_key "ret";
|
||||
wait_still_screen 5;
|
||||
type_string "5\n"; # set password
|
||||
type_string "5\n"; # set password
|
||||
wait_still_screen 5;
|
||||
type_string get_var("USER_PASSWORD", "weakpassword");
|
||||
send_key "ret";
|
||||
@ -686,13 +686,13 @@ sub console_initial_setup {
|
||||
type_string get_var("USER_PASSWORD", "weakpassword");
|
||||
send_key "ret";
|
||||
wait_still_screen 5;
|
||||
type_string "6\n"; # make him an administrator
|
||||
type_string "6\n"; # make him an administrator
|
||||
wait_still_screen 5;
|
||||
type_string "c\n";
|
||||
wait_still_screen 7;
|
||||
|
||||
assert_screen "console_initial_SETUP_DONE", 30;
|
||||
type_string "c\n"; # continue
|
||||
type_string "c\n"; # continue
|
||||
}
|
||||
|
||||
sub handle_welcome_screen {
|
||||
@ -735,18 +735,18 @@ sub gnome_initial_setup {
|
||||
# https://fedoraproject.org//wiki/Changes/ReduceInitialSetupRedundancy
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1474787 ,
|
||||
# except 'language' is never *really* skipped (see above)
|
||||
@nexts = grep {$_ ne 'keyboard'} @nexts;
|
||||
@nexts = grep {$_ ne 'timezone'} @nexts;
|
||||
@nexts = grep { $_ ne 'keyboard' } @nexts;
|
||||
@nexts = grep { $_ ne 'timezone' } @nexts;
|
||||
}
|
||||
else {
|
||||
# 'timezone' and 'software' are suppressed for the 'existing user'
|
||||
# form of g-i-s
|
||||
@nexts = grep {$_ ne 'software'} @nexts;
|
||||
@nexts = grep {$_ ne 'timezone'} @nexts;
|
||||
@nexts = grep { $_ ne 'software' } @nexts;
|
||||
@nexts = grep { $_ ne 'timezone' } @nexts;
|
||||
}
|
||||
# 'additional software sources' screen does not display on F28+:
|
||||
# https://bugzilla.gnome.org/show_bug.cgi?id=794825
|
||||
@nexts = grep {$_ ne 'software'} @nexts;
|
||||
@nexts = grep { $_ ne 'software' } @nexts;
|
||||
|
||||
# note: in g-i-s 3.37.91 and later, the first screen in systemwide
|
||||
# mode has a "Start Setup" button, not a "Next" button
|
||||
@ -761,13 +761,13 @@ sub gnome_initial_setup {
|
||||
# wait a bit in case of animation
|
||||
wait_still_screen 3;
|
||||
# one more check for frickin auth_required
|
||||
if (check_screen "auth_required") {
|
||||
if (check_screen "auth_required") {
|
||||
record_soft_failure "Unexpected authentication required: https://gitlab.gnome.org/GNOME/gnome-initial-setup/-/issues/106";
|
||||
send_key "esc";
|
||||
}
|
||||
# GDM 3.24.1 dumps a cursor in the middle of the screen here...
|
||||
mouse_hide if ($args{prelogin});
|
||||
for my $n (1..scalar(@nexts)) {
|
||||
for my $n (1 .. scalar(@nexts)) {
|
||||
# click 'Next' $nexts times, moving the mouse to avoid
|
||||
# highlight problems, sleeping to give it time to get
|
||||
# to the next screen between clicks
|
||||
@ -794,7 +794,7 @@ sub gnome_initial_setup {
|
||||
unless (get_var("VNC_CLIENT")) {
|
||||
# click 'Skip' one time (this is the 'goa' screen). We don't
|
||||
# get it on VNC_CLIENT case as network isn't working (yet)
|
||||
mouse_set(100,100);
|
||||
mouse_set(100, 100);
|
||||
wait_screen_change { assert_and_click "skip_button"; };
|
||||
}
|
||||
send_key "ret";
|
||||
@ -843,7 +843,7 @@ sub anaconda_create_user {
|
||||
@_
|
||||
);
|
||||
my $user_login = get_var("USER_LOGIN") || "test";
|
||||
assert_and_click("anaconda_install_user_creation", timeout=>$args{timeout});
|
||||
assert_and_click("anaconda_install_user_creation", timeout => $args{timeout});
|
||||
assert_screen "anaconda_install_user_creation_screen";
|
||||
# wait out animation
|
||||
wait_still_screen 2;
|
||||
@ -901,21 +901,21 @@ sub check_desktop {
|
||||
}
|
||||
|
||||
sub download_modularity_tests {
|
||||
# Download the modularity test script, place in the system and then
|
||||
# modify the access rights to make it executable.
|
||||
# Download the modularity test script, place in the system and then
|
||||
# modify the access rights to make it executable.
|
||||
my ($whitelist) = @_;
|
||||
# we need python3-yaml for the script to run
|
||||
assert_script_run 'dnf -y install python3-yaml', 180;
|
||||
assert_script_run 'curl -o /root/test.py https://pagure.io/fedora-qa/modularity_testing_scripts/raw/master/f/modular_functions.py';
|
||||
if ($whitelist eq 'whitelist') {
|
||||
assert_script_run 'curl -o /root/whitelist https://pagure.io/fedora-qa/modularity_testing_scripts/raw/master/f/whitelist';
|
||||
assert_script_run 'curl -o /root/whitelist https://pagure.io/fedora-qa/modularity_testing_scripts/raw/master/f/whitelist';
|
||||
}
|
||||
assert_script_run 'chmod 755 /root/test.py';
|
||||
}
|
||||
|
||||
sub quit_firefox {
|
||||
# Quit Firefox, handling the 'close multiple tabs' warning screen if
|
||||
# it shows up
|
||||
# Quit Firefox, handling the 'close multiple tabs' warning screen if
|
||||
# it shows up
|
||||
send_key "ctrl-q";
|
||||
# expect to get to either the tabs warning or a console
|
||||
if (check_screen ["user_console", "root_console", "firefox_close_tabs"], 30) {
|
||||
@ -927,14 +927,14 @@ sub quit_firefox {
|
||||
}
|
||||
|
||||
sub start_with_launcher {
|
||||
# Get the name of the needle with a launcher, find the launcher in the menu
|
||||
# and click on it to start the application. This function works for the
|
||||
# Gnome desktop.
|
||||
# Get the name of the needle with a launcher, find the launcher in the menu
|
||||
# and click on it to start the application. This function works for the
|
||||
# Gnome desktop.
|
||||
|
||||
# $launcher holds the launcher needle, but some of the apps are hidden in a submenu
|
||||
# so this must be handled first to find the launcher needle.
|
||||
|
||||
my ($launcher,$submenu,$group) = @_;
|
||||
my ($launcher, $submenu, $group) = @_;
|
||||
$submenu //= '';
|
||||
$group //= '';
|
||||
my $desktop = get_var('DESKTOP');
|
||||
@ -979,7 +979,7 @@ sub start_with_launcher {
|
||||
assert_and_click $launcher;
|
||||
wait_still_screen 5;
|
||||
}
|
||||
elsif ($desktop eq 'kde'){
|
||||
elsif ($desktop eq 'kde') {
|
||||
# Click on the KDE launcher icon
|
||||
assert_and_click 'kde_menu_launcher';
|
||||
wait_still_screen 2;
|
||||
@ -1006,7 +1006,7 @@ sub start_with_launcher {
|
||||
|
||||
|
||||
sub quit_with_shortcut {
|
||||
# Quit the application using the Alt-F4 keyboard shortcut
|
||||
# Quit the application using the Alt-F4 keyboard shortcut
|
||||
send_key 'alt-f4';
|
||||
wait_still_screen 5;
|
||||
assert_screen 'workspace';
|
||||
@ -1035,12 +1035,12 @@ sub advisory_get_installed_packages {
|
||||
# occasionally, for some reason, it's unhappy about sorting;
|
||||
# we shouldn't fail the test in this case, just upload the
|
||||
# files so we can see why...
|
||||
upload_logs "/tmp/allpkgs.txt", failok=>1;
|
||||
upload_logs "/var/log/updatepkgs.txt", failok=>1;
|
||||
upload_logs "/tmp/allpkgs.txt", failok => 1;
|
||||
upload_logs "/var/log/updatepkgs.txt", failok => 1;
|
||||
}
|
||||
# we'll try and upload the output even if comm 'failed', as it
|
||||
# does in fact still write it in some cases
|
||||
upload_logs "/var/log/testedpkgs.txt", failok=>1;
|
||||
upload_logs "/var/log/testedpkgs.txt", failok => 1;
|
||||
}
|
||||
|
||||
sub advisory_check_nonmatching_packages {
|
||||
@ -1068,8 +1068,8 @@ sub advisory_check_nonmatching_packages {
|
||||
script_run 'for pkg in $(cat /var/log/updatepkgnames.txt); do rpm -q $pkg && rpm -q $pkg --last | head -1 | cut -d" " -f1 | xargs rpm -q --qf "%{SOURCERPM} %{EPOCH} %{NAME}-%{VERSION}-%{RELEASE}\n" >> /tmp/installedupdatepkgs.txt; done';
|
||||
script_run 'sort -u -o /tmp/installedupdatepkgs.txt /tmp/installedupdatepkgs.txt';
|
||||
# for debugging, may as well always upload these, can't hurt anything
|
||||
upload_logs "/tmp/installedupdatepkgs.txt", failok=>1;
|
||||
upload_logs "/var/log/updatepkgs.txt", failok=>1;
|
||||
upload_logs "/tmp/installedupdatepkgs.txt", failok => 1;
|
||||
upload_logs "/var/log/updatepkgs.txt", failok => 1;
|
||||
# if any line appears in installedupdatepkgs.txt but not updatepkgs.txt,
|
||||
# we have a problem.
|
||||
if (script_run 'comm -23 /tmp/installedupdatepkgs.txt /var/log/updatepkgs.txt > /var/log/installednotupdatedpkgs.txt') {
|
||||
@ -1081,7 +1081,7 @@ sub advisory_check_nonmatching_packages {
|
||||
# this exits 1 if the file is zero-length, 0 if it's longer
|
||||
# if it's 0, that's *BAD*: we want to upload the file and fail
|
||||
unless (script_run 'test -s /var/log/installednotupdatedpkgs.txt') {
|
||||
upload_logs "/var/log/installednotupdatedpkgs.txt", failok=>1;
|
||||
upload_logs "/var/log/installednotupdatedpkgs.txt", failok => 1;
|
||||
my $message = "Package(s) from update not installed when it should have been! See installednotupdatedpkgs.txt";
|
||||
if ($args{fatal}) {
|
||||
set_var("_ACNMP_DONE", "1");
|
||||
@ -1134,7 +1134,7 @@ sub select_rescue_mode {
|
||||
}
|
||||
}
|
||||
|
||||
assert_screen "rescue_select", 180; # it takes time to start anaconda
|
||||
assert_screen "rescue_select", 180; # it takes time to start anaconda
|
||||
}
|
||||
|
||||
sub copy_devcdrom_as_isofile {
|
||||
@ -1289,10 +1289,10 @@ sub check_prerelease {
|
||||
assert_screen "prerelease_note";
|
||||
}
|
||||
elsif ($prerelease == 0) {
|
||||
# If the prerelease note is shown, where it should not be, die!
|
||||
if (check_screen "prerelease_note") {
|
||||
# If the prerelease note is shown, where it should not be, die!
|
||||
if (check_screen "prerelease_note") {
|
||||
die "The PRERELEASE tag is shown, but it should NOT be.";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -1372,12 +1372,12 @@ sub click_unwanted_notifications {
|
||||
my @closed;
|
||||
while ($count > 0 && check_screen "desktop_update_notification_popup", 5) {
|
||||
$count -= 1;
|
||||
push (@closed, 'update');
|
||||
push(@closed, 'update');
|
||||
click_lastmatch;
|
||||
}
|
||||
if (check_screen "akonadi_migration_agent_running", 5) {
|
||||
click_lastmatch;
|
||||
push (@closed, 'akonadi');
|
||||
push(@closed, 'akonadi');
|
||||
}
|
||||
return @closed;
|
||||
}
|
||||
@ -1400,7 +1400,7 @@ sub register_application {
|
||||
sub solidify_wallpaper {
|
||||
my $desktop = get_var("DESKTOP");
|
||||
if ($desktop eq "kde") {
|
||||
# Run the Desktop settings
|
||||
# Run the Desktop settings
|
||||
# FIXME workaround a weird bug where alt-d-s does something
|
||||
# different until you right click on the desktop:
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1933118
|
||||
|
20
main.pm
20
main.pm
@ -33,7 +33,7 @@ testapi::set_distribution(fedoradistribution->new());
|
||||
# Stolen from openSUSE.
|
||||
sub unregister_needle_tags($) {
|
||||
my $tag = shift;
|
||||
my @a = @{ needle::tags($tag) };
|
||||
my @a = @{needle::tags($tag)};
|
||||
for my $n (@a) { $n->unregister(); }
|
||||
}
|
||||
|
||||
@ -49,14 +49,14 @@ sub unregister_needle_tags($) {
|
||||
# 'LANGUAGE-' at all.
|
||||
sub unregister_prefix_tags {
|
||||
my ($prefix, $valueref) = @_;
|
||||
NEEDLE: for my $needle ( needle::all() ) {
|
||||
NEEDLE: for my $needle (needle::all()) {
|
||||
my $unregister = 0;
|
||||
for my $tag ( @{$needle->{'tags'}} ) {
|
||||
for my $tag (@{$needle->{'tags'}}) {
|
||||
if ($tag =~ /^\Q$prefix/) {
|
||||
# We have at least one tag matching the prefix, so we
|
||||
# *MAY* want to un-register the needle
|
||||
$unregister = 1;
|
||||
for my $value ( @{$valueref} ) {
|
||||
for my $value (@{$valueref}) {
|
||||
# At any point if we hit a prefix-value match, we
|
||||
# know we need to keep this needle and can skip
|
||||
# to the next
|
||||
@ -85,13 +85,13 @@ sub cleanup_needles() {
|
||||
|
||||
# Unregister desktop needles of other desktops when DESKTOP is specified
|
||||
if (get_var('DESKTOP')) {
|
||||
unregister_prefix_tags('DESKTOP', [ get_var('DESKTOP') ])
|
||||
unregister_prefix_tags('DESKTOP', [get_var('DESKTOP')]);
|
||||
}
|
||||
|
||||
# Unregister non-language-appropriate needles. See unregister_except_
|
||||
# tags for details; basically all needles with at least one LANGUAGE-
|
||||
# tag will be unregistered unless they match the current langauge.
|
||||
my $langref = [ get_var('LANGUAGE') || 'english' ];
|
||||
my $langref = [get_var('LANGUAGE') || 'english'];
|
||||
unregister_prefix_tags('LANGUAGE', $langref);
|
||||
}
|
||||
$needle::cleanuphandler = \&cleanup_needles;
|
||||
@ -195,15 +195,15 @@ sub load_install_tests() {
|
||||
my $partitioning = get_var('PARTITIONING');
|
||||
# if PARTITIONING is unset, or one of [...], use disk_guided_empty,
|
||||
# which is the simplest / 'default' case.
|
||||
if (! $partitioning || $partitioning ~~ ['guided_empty', 'guided_free_space']) {
|
||||
if (!$partitioning || $partitioning ~~ ['guided_empty', 'guided_free_space']) {
|
||||
$storage = "tests/disk_guided_empty.pm";
|
||||
}
|
||||
else {
|
||||
$storage = "tests/disk_".$partitioning.".pm";
|
||||
$storage = "tests/disk_" . $partitioning . ".pm";
|
||||
}
|
||||
autotest::loadtest $storage;
|
||||
|
||||
if (get_var("ENCRYPT_PASSWORD")){
|
||||
if (get_var("ENCRYPT_PASSWORD")) {
|
||||
autotest::loadtest "tests/disk_guided_encrypted.pm";
|
||||
}
|
||||
|
||||
@ -330,7 +330,7 @@ sub load_postinstall_tests() {
|
||||
}
|
||||
autotest::loadtest $storagepost if ($storagepost);
|
||||
|
||||
if (get_var("UEFI") &! get_var("NO_UEFI_POST") &! get_var("START_AFTER_TEST")) {
|
||||
if (get_var("UEFI") & !get_var("NO_UEFI_POST") & !get_var("START_AFTER_TEST")) {
|
||||
autotest::loadtest "tests/uefi_postinstall.pm";
|
||||
}
|
||||
|
||||
|
@ -5,7 +5,7 @@ use utils;
|
||||
|
||||
sub run {
|
||||
my $self = shift;
|
||||
$self->root_console(tty=>3);
|
||||
$self->root_console(tty => 3);
|
||||
# figure out which packages from the update actually got installed
|
||||
# (if any) as part of this test
|
||||
advisory_get_installed_packages;
|
||||
@ -15,7 +15,7 @@ sub run {
|
||||
}
|
||||
|
||||
sub test_flags {
|
||||
return { fatal => 1 };
|
||||
return {fatal => 1};
|
||||
}
|
||||
|
||||
1;
|
||||
|
@ -7,7 +7,7 @@ sub run {
|
||||
my $self = shift;
|
||||
# do the 'repo setup' steps, which set up a repo containing the
|
||||
# update packages and run 'dnf update'
|
||||
$self->root_console(tty=>3);
|
||||
$self->root_console(tty => 3);
|
||||
repo_setup;
|
||||
if (get_var("ADVISORY_BOOT_TEST")) {
|
||||
# to test boot stuff - in case the update touched grub2, or dracut,
|
||||
@ -25,7 +25,7 @@ sub run {
|
||||
}
|
||||
|
||||
sub test_flags {
|
||||
return { fatal => 1 };
|
||||
return {fatal => 1};
|
||||
}
|
||||
|
||||
1;
|
||||
|
@ -7,7 +7,7 @@ use tapnet;
|
||||
sub run {
|
||||
my $self = shift;
|
||||
# Anaconda hub
|
||||
assert_screen "anaconda_main_hub", 300; #
|
||||
assert_screen "anaconda_main_hub", 300; #
|
||||
|
||||
assert_and_click "anaconda_main_hub_kdump";
|
||||
assert_and_click "anaconda_kdump_disable";
|
||||
@ -16,7 +16,7 @@ sub run {
|
||||
}
|
||||
|
||||
sub test_flags {
|
||||
return { fatal => 1 };
|
||||
return {fatal => 1};
|
||||
}
|
||||
|
||||
1;
|
||||
|
@ -7,7 +7,7 @@ use tapnet;
|
||||
sub run {
|
||||
my $self = shift;
|
||||
# Anaconda hub
|
||||
assert_screen "anaconda_main_hub", 300; #
|
||||
assert_screen "anaconda_main_hub", 300; #
|
||||
|
||||
assert_and_click "anaconda_main_hub_kdump";
|
||||
assert_and_click "anaconda_kdump_enable";
|
||||
@ -16,7 +16,7 @@ sub run {
|
||||
}
|
||||
|
||||
sub test_flags {
|
||||
return { fatal => 1 };
|
||||
return {fatal => 1};
|
||||
}
|
||||
|
||||
1;
|
||||
|
@ -7,7 +7,7 @@ use tapnet;
|
||||
sub run {
|
||||
my $self = shift;
|
||||
# Anaconda hub
|
||||
assert_screen "anaconda_main_hub", 300; #
|
||||
assert_screen "anaconda_main_hub", 300; #
|
||||
|
||||
if (check_screen ["anaconda_network_connected"], 60) {
|
||||
# network is connected already, we're done
|
||||
@ -22,7 +22,7 @@ sub run {
|
||||
}
|
||||
|
||||
sub test_flags {
|
||||
return { fatal => 1 };
|
||||
return {fatal => 1};
|
||||
}
|
||||
|
||||
1;
|
||||
|
@ -30,7 +30,7 @@ sub run {
|
||||
}
|
||||
|
||||
sub test_flags {
|
||||
return { fatal => 1 };
|
||||
return {fatal => 1};
|
||||
}
|
||||
|
||||
1;
|
||||
|
@ -77,7 +77,7 @@ sub run {
|
||||
# call do_bootloader with postinstall=0, the params, and the mutex,
|
||||
# unless we're a VNC install client (no bootloader there)
|
||||
unless (get_var("VNC_CLIENT")) {
|
||||
do_bootloader(postinstall=>0, params=>$params, mutex=>$mutex, timeout=>$timeout);
|
||||
do_bootloader(postinstall => 0, params => $params, mutex => $mutex, timeout => $timeout);
|
||||
}
|
||||
|
||||
# Read variables for identification tests (see further).
|
||||
@ -99,7 +99,7 @@ sub run {
|
||||
# we direct the installer to virtio-console1, and use
|
||||
# virtio-console as a root console
|
||||
select_console('virtio-console1');
|
||||
unless (wait_serial "Use text mode", timeout=>120) { die "Anaconda has not started."; }
|
||||
unless (wait_serial "Use text mode", timeout => 120) { die "Anaconda has not started."; }
|
||||
type_string "2\n";
|
||||
unless (wait_serial "Installation") { die "Text version of Anaconda has not started."; }
|
||||
}
|
||||
@ -130,17 +130,17 @@ sub run {
|
||||
my $relnum = get_release_number;
|
||||
my $dclick = 0;
|
||||
$dclick = 1 if (get_var("DESKTOP") eq "kde" && $relnum > 33);
|
||||
assert_and_click("live_start_anaconda_icon", dclick=>$dclick);
|
||||
assert_and_click("live_start_anaconda_icon", dclick => $dclick);
|
||||
unless (check_screen "anaconda_select_install_lang", 180) {
|
||||
# click it again - on KDE since 2019-10 or so it seems
|
||||
# like the first attempt sometimes just doesn't work
|
||||
assert_and_click("live_start_anaconda_icon", dclick=>$dclick, timeout=>300);
|
||||
assert_and_click("live_start_anaconda_icon", dclick => $dclick, timeout => 300);
|
||||
}
|
||||
}
|
||||
my $language = get_var('LANGUAGE') || 'english';
|
||||
# wait for anaconda to appear; we click to work around
|
||||
# RHBZ #1566066 if it happens
|
||||
assert_and_click("anaconda_select_install_lang", timeout=>300);
|
||||
assert_and_click("anaconda_select_install_lang", timeout => 300);
|
||||
|
||||
# Select install language
|
||||
wait_screen_change { assert_and_click "anaconda_select_install_lang_input"; };
|
||||
@ -177,7 +177,7 @@ sub run {
|
||||
# Here, we will watch for the graphical elements in Anaconda main hub.
|
||||
my $branched = get_var('VERSION');
|
||||
if ($identification eq 'true' or $branched ne "Rawhide") {
|
||||
check_left_bar(); # See utils.pm
|
||||
check_left_bar(); # See utils.pm
|
||||
check_prerelease();
|
||||
check_version();
|
||||
}
|
||||
@ -185,13 +185,13 @@ sub run {
|
||||
# didn't match anything: if the Rawhide warning didn't
|
||||
# show by now it never will, so we'll just wait for the
|
||||
# hub to show up.
|
||||
assert_screen "anaconda_main_hub", 900; #
|
||||
assert_screen "anaconda_main_hub", 900; #
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
sub test_flags {
|
||||
return { fatal => 1 };
|
||||
return {fatal => 1};
|
||||
}
|
||||
|
||||
1;
|
||||
|
@ -81,16 +81,16 @@ sub run {
|
||||
}
|
||||
# just for convenience - sometimes it's useful to see this log
|
||||
# for a success case
|
||||
upload_logs "/tmp/packaging.log", failok=>1;
|
||||
upload_logs "/tmp/packaging.log", failok => 1;
|
||||
send_key "ctrl-alt-f6";
|
||||
|
||||
# Anaconda hub
|
||||
assert_screen "anaconda_main_hub", 30; #
|
||||
assert_screen "anaconda_main_hub", 30; #
|
||||
|
||||
}
|
||||
|
||||
sub test_flags {
|
||||
return { fatal => 1 };
|
||||
return {fatal => 1};
|
||||
}
|
||||
|
||||
1;
|
||||
|
@ -4,7 +4,7 @@ use testapi;
|
||||
|
||||
sub run {
|
||||
my $self = shift;
|
||||
$self->root_console(tty=>4);
|
||||
$self->root_console(tty => 4);
|
||||
assert_script_run 'top -i -n20 -b > /var/tmp/top.log', 120;
|
||||
upload_logs '/var/tmp/top.log';
|
||||
unless (get_var("CANNED")) {
|
||||
@ -43,7 +43,7 @@ sub run {
|
||||
}
|
||||
|
||||
sub test_flags {
|
||||
return { 'ignore_failure' => 1 };
|
||||
return {'ignore_failure' => 1};
|
||||
}
|
||||
|
||||
1;
|
||||
|
@ -5,7 +5,7 @@ use testapi;
|
||||
|
||||
sub run {
|
||||
my $self = shift;
|
||||
$self->root_console(tty=>3);
|
||||
$self->root_console(tty => 3);
|
||||
# if this is a non-English, non-switched layout, load US layout
|
||||
# at this point
|
||||
# FIXME: this is all kind of a mess, as on such configs we need
|
||||
|
@ -11,14 +11,14 @@ sub run {
|
||||
# with a password that requires Arabic support.
|
||||
# Such attempt to log in would always fail.
|
||||
if (get_var("LANGUAGE") ne "arabic" && get_var("USER_LOGIN") ne "false") {
|
||||
console_login(user=>get_var("USER_LOGIN", "test"), password=>get_var("USER_PASSWORD", "weakpassword"));
|
||||
console_login(user => get_var("USER_LOGIN", "test"), password => get_var("USER_PASSWORD", "weakpassword"));
|
||||
}
|
||||
if (get_var("ROOT_PASSWORD")) {
|
||||
console_login(user=>"root", password=>get_var("ROOT_PASSWORD"));
|
||||
console_login(user => "root", password => get_var("ROOT_PASSWORD"));
|
||||
}
|
||||
}
|
||||
sub test_flags {
|
||||
return { fatal => 1, milestone => 1 };
|
||||
return {fatal => 1, milestone => 1};
|
||||
}
|
||||
1;
|
||||
# vim: set sw=4 et:
|
||||
|
@ -10,7 +10,7 @@ sub run {
|
||||
# use the desktops' graphical shutdown methods, we just go to a
|
||||
# console and run 'poweroff'. We can write separate tests for
|
||||
# properly testing shutdown/reboot/log out from desktops.
|
||||
$self->root_console(tty=>4);
|
||||
$self->root_console(tty => 4);
|
||||
# disable the hidden grub menu on Workstation, so post-install
|
||||
# tests that need to edit boot params will see it. Don't use
|
||||
# assert_script_run as this will fail when it's not set
|
||||
@ -23,7 +23,7 @@ sub run {
|
||||
# even if shutdown fails. we should have a separate test for shutdown/
|
||||
# logout/reboot stuff, might need some refactoring.
|
||||
sub test_flags {
|
||||
return { 'norollback' => 1, 'ignore_failure' => 1 };
|
||||
return {'norollback' => 1, 'ignore_failure' => 1};
|
||||
}
|
||||
|
||||
1;
|
||||
|
@ -11,7 +11,7 @@ sub run {
|
||||
|
||||
# handle bootloader, if requested
|
||||
if (get_var("GRUB_POSTINSTALL")) {
|
||||
do_bootloader(postinstall=>1, params=>get_var("GRUB_POSTINSTALL"), timeout=>$wait_time);
|
||||
do_bootloader(postinstall => 1, params => get_var("GRUB_POSTINSTALL"), timeout => $wait_time);
|
||||
$wait_time = 240;
|
||||
}
|
||||
|
||||
@ -24,23 +24,23 @@ sub run {
|
||||
boot_to_login_screen(timeout => $wait_time);
|
||||
|
||||
# switch to TTY3 for both, graphical and console tests
|
||||
$self->root_console(tty=>3);
|
||||
$self->root_console(tty => 3);
|
||||
|
||||
# do user login unless USER_LOGIN is set to string 'false'
|
||||
unless (get_var("USER_LOGIN") eq "false") {
|
||||
# this avoids us waiting 90 seconds for a # to show up
|
||||
my $origprompt = $testapi::distri->{serial_term_prompt};
|
||||
$testapi::distri->{serial_term_prompt} = '$ ';
|
||||
console_login(user=>get_var("USER_LOGIN", "test"), password=>get_var("USER_PASSWORD", "weakpassword"));
|
||||
console_login(user => get_var("USER_LOGIN", "test"), password => get_var("USER_PASSWORD", "weakpassword"));
|
||||
$testapi::distri->{serial_term_prompt} = $origprompt;
|
||||
}
|
||||
if (get_var("ROOT_PASSWORD")) {
|
||||
console_login(user=>"root", password=>get_var("ROOT_PASSWORD"));
|
||||
console_login(user => "root", password => get_var("ROOT_PASSWORD"));
|
||||
}
|
||||
}
|
||||
|
||||
sub test_flags {
|
||||
return { fatal => 1, milestone => 1 };
|
||||
return {fatal => 1, milestone => 1};
|
||||
}
|
||||
|
||||
1;
|
||||
|
@ -12,7 +12,7 @@ sub run {
|
||||
}
|
||||
|
||||
sub test_flags {
|
||||
return { fatal => 1 };
|
||||
return {fatal => 1};
|
||||
}
|
||||
|
||||
1;
|
||||
|
@ -137,14 +137,14 @@ sub run {
|
||||
# there are various things we might have to do at a console here
|
||||
# before we actually reboot. let's figure them all out first...
|
||||
my @actions;
|
||||
push (@actions, 'consoletty0') if (get_var("ARCH") eq "aarch64");
|
||||
push (@actions, 'abrt') if (get_var("ABRT", '') eq "system");
|
||||
push (@actions, 'rootpw') if (get_var("INSTALLER_NO_ROOT"));
|
||||
push (@actions, 'stagingrepos') if (get_var("DNF_CONTENTDIR"));
|
||||
push(@actions, 'consoletty0') if (get_var("ARCH") eq "aarch64");
|
||||
push(@actions, 'abrt') if (get_var("ABRT", '') eq "system");
|
||||
push(@actions, 'rootpw') if (get_var("INSTALLER_NO_ROOT"));
|
||||
push(@actions, 'stagingrepos') if (get_var("DNF_CONTENTDIR"));
|
||||
# memcheck test doesn't need to reboot at all. Rebooting from GUI
|
||||
# for lives is unreliable. And if we're already doing something
|
||||
# else at a console, we may as well reboot from there too
|
||||
push (@actions, 'reboot') if (!get_var("MEMCHECK") && (get_var("LIVE") || @actions));
|
||||
push(@actions, 'reboot') if (!get_var("MEMCHECK") && (get_var("LIVE") || @actions));
|
||||
# our approach for taking all these actions doesn't work on VNC
|
||||
# installs, fortunately we don't need any of them in that case
|
||||
# yet, so for now let's just flush the list here if we're VNC
|
||||
@ -159,14 +159,14 @@ sub run {
|
||||
}
|
||||
# OK, if we're here, we got actions, so head to a console. Switch
|
||||
# to console after liveinst sometimes takes a while, so 30 secs
|
||||
$self->root_console(timeout=>30);
|
||||
$self->root_console(timeout => 30);
|
||||
# this is something a couple of actions may need to know
|
||||
my $mount = "/mnt/sysimage";
|
||||
if (get_var("CANNED")) {
|
||||
# finding the actual host system root is fun for ostree...
|
||||
$mount = "/mnt/sysimage/ostree/deploy/fedora*/deploy/*.?";
|
||||
}
|
||||
if (grep {$_ eq 'consoletty0'} @actions) {
|
||||
if (grep { $_ eq 'consoletty0' } @actions) {
|
||||
# somehow, by this point, localized keyboard layout has been
|
||||
# loaded for this tty, so for French and Arabic at least we
|
||||
# need to load the 'us' layout again for the next command to
|
||||
@ -180,15 +180,15 @@ sub run {
|
||||
# regenerate the bootloader config
|
||||
assert_script_run "chroot $mount grub2-mkconfig -o /boot/efi/EFI/rocky/grub.cfg";
|
||||
}
|
||||
if (grep {$_ eq 'abrt'} @actions) {
|
||||
# Chroot in the newly installed system and switch on ABRT systemwide
|
||||
assert_script_run "chroot $mount abrt-auto-reporting 1";
|
||||
if (grep { $_ eq 'abrt' } @actions) {
|
||||
# Chroot in the newly installed system and switch on ABRT systemwide
|
||||
assert_script_run "chroot $mount abrt-auto-reporting 1";
|
||||
}
|
||||
if (grep {$_ eq 'rootpw'} @actions) {
|
||||
if (grep { $_ eq 'rootpw' } @actions) {
|
||||
my $root_password = get_var("ROOT_PASSWORD") || "weakpassword";
|
||||
assert_script_run "echo 'root:$root_password' | chpasswd -R $mount";
|
||||
}
|
||||
if (grep {$_ eq 'stagingrepos'} @actions) {
|
||||
if (grep { $_ eq 'stagingrepos' } @actions) {
|
||||
if (get_version_major() < 9) {
|
||||
assert_script_run 'sed -i -e "s/^mirrorlist/#mirrorlist/g;s,^#\(baseurl=http[s]*://\),\1,g" ' . $mount . '/etc/yum.repos.d/Rocky-BaseOS.repo';
|
||||
assert_script_run 'sed -i -e "s/^mirrorlist/#mirrorlist/g;s,^#\(baseurl=http[s]*://\),\1,g" ' . $mount . '/etc/yum.repos.d/Rocky-AppStream.repo';
|
||||