os-autoinst-distri-rocky-mi.../tests
Adam Williamson a901fce4ab add QA:Testcase_FreeIPA_password_change test
Summary:
again, added as a non-fatal module for realmd_join_cockpit as
it's convenient to do it here. Also abstract a couple of ipa
bits into a new exporter package in the style of SUSE's
mm_network, rather than using ill-fitting class inheritance as
we have before - we should probably convert our existing class
based stuff to work this way.

Also a few minor tweaks and clean-ups of the other tests:

The path in console_login() where we detect login of a regular
user when we want root or vice versa and log out was actually
broken because it would 'wait' for the result of the 'exit'
command, which obviously doesn't work (as it relies on running
another command afterwards, and we're no longer at a shell).
This commit no longer actually uses that path, but I spotted
the bug with an earlier version of this which did, and we may
as well keep the fix.

/var/log/lastlog is an apparently-extremely-large sparse file.
A couple of times it seemed to cause tar to run very slowly
while creating the /var/log archive for upload on failure. It's
no use for diagnosing bugs, so we may as well exclude it from
the archive.

I caught cockpit webUI login failing one time when testing the
test, so threw in a wait_still_screen before starting to type
the URL, as we have for the FreeIPA webUI.

I also caught a timing issue with the openQA webUI policy add
step; the test flips from the Users screen to the HBAC screen
then clicks the 'add' button, but there's actually an identical
'add' button on *both* screens, so it could wind up trying to
click the one on the Users screen instead, if the web UI took
a few milliseconds to switch. So we throw in a needle match to
make sure we're actually on the HBAC screen before clicking the
button.

We make the freeipa_webui test a 'milestone' so that if the
new test fails, restoring to the last-known-good milestone
doesn't take so long; it actually seems like openQA can get
confused and try to cancel the test if restoring the milestone
takes a *really* long time, and wind up with a zombie qemu
process, which isn't good. This seems to avoid that happening.

Test Plan:
In the simple case, just run all the FreeIPA-related
tests on Fedora 24 (as Rawhide is broken) and make sure they all
work properly. To get a bit more advanced you can throw in an
`assert_script_run 'false'` in either of the non-fatal tests to
break it and make sure things go properly when that happens (the
last milestone should be restored - which should be right after
freeipa_webui, sitting at tty1 - and run properly; things are
set up so each test starts with root logged in on tty1).

Reviewers: jskladan, garretraziel

Reviewed By: garretraziel

Subscribers: tflink

Differential Revision: https://phab.qadevel.cloud.fedoraproject.org/D935
2016-08-03 13:21:12 -07:00
..
_boot_to_anaconda.pm add NFS tests (and DHCP/DNS in the support server) 2016-06-13 08:42:30 -07:00
_check_install_source.pm add NFS tests (and DHCP/DNS in the support server) 2016-06-13 08:42:30 -07:00
_console_shutdown.pm shutdown before uploading disk images 2016-03-22 07:19:47 -07:00
_console_wait_login.pm add a cockpit realmd FreeIPA join test 2016-06-07 13:00:39 -07:00
_do_install_and_reboot.pm use sudo when rebooting after live install 2016-06-08 12:20:43 -07:00
_graphical_wait_login.pm add encrypted workstation upgrade tests (current and previous) 2016-07-08 08:56:57 -07:00
_network_static.pm add an iscsi test, and a support_server test to support it 2016-06-09 08:43:46 -07:00
_software_selection.pm add comments and documentation 2015-08-05 08:23:59 +02:00
_support_server_postinstall.pm add QA:Testcase_Anaconda_updates.img_via_installation_source 2016-08-03 13:19:18 -07:00
base_selinux.pm add a base_selinux test (follow-on from default_install) 2015-12-17 12:46:14 -08:00
base_service_manipulation.pm add base_service_manipulation test 2016-01-11 12:30:24 -08:00
base_services_start.pm workaround mcelog failing 2016-06-01 08:12:16 +02:00
desktop_terminal_postinstall.pm add desktop_terminal test, refactor test loading a bit 2016-05-05 16:39:47 -07:00
disk_custom_btrfs.pm add ext3, btrfs and LVM thin tests, tweaks to custom methods 2015-08-10 11:01:12 -07:00
disk_custom_ext3.pm add ext3, btrfs and LVM thin tests, tweaks to custom methods 2015-08-10 11:01:12 -07:00
disk_custom_iscsi_postinstall.pm add an iscsi test, and a support_server test to support it 2016-06-09 08:43:46 -07:00
disk_custom_iscsi.pm add an iscsi test, and a support_server test to support it 2016-06-09 08:43:46 -07:00
disk_custom_lvmthin.pm add ext3, btrfs and LVM thin tests, tweaks to custom methods 2015-08-10 11:01:12 -07:00
disk_custom_no_swap.pm small fix: wait a sec between clicks of 'Done' in no_swap 2015-08-31 17:02:27 -07:00
disk_custom_software_raid_postinstall.pm use validate_script_output instead of typing and needles matching 2015-11-04 14:38:36 +01:00
disk_custom_software_raid.pm add an iscsi test, and a support_server test to support it 2016-06-09 08:43:46 -07:00
disk_custom_xfs.pm add custom partitioning xfs tests 2015-11-26 13:50:45 +01:00
disk_guided_delete_all.pm add comments and documentation 2015-08-05 08:23:59 +02:00
disk_guided_delete_partial_postinstall.pm use assert_script_run when possible 2016-01-12 09:27:14 -08:00
disk_guided_delete_partial.pm add comments and documentation 2015-08-05 08:23:59 +02:00
disk_guided_empty.pm rename BOOT_UPDATES_IMG_URL to TEST_UPDATES, add GRUBADD 2016-04-08 13:21:29 -07:00
disk_guided_encrypted_postinstall.pm add encrypted workstation upgrade tests (current and previous) 2016-07-08 08:56:57 -07:00
disk_guided_encrypted.pm disk_guided_encrypted: only switch layout when appropriate 2016-05-20 11:56:48 -07:00
disk_guided_free_space_postinstall.pm use assert_script_run when possible 2016-01-12 09:27:14 -08:00
disk_guided_multi_empty_all_postinstall.pm use validate_script_output instead of typing and needles matching 2015-11-04 14:38:36 +01:00
disk_guided_multi_empty_all.pm add an iscsi test, and a support_server test to support it 2016-06-09 08:43:46 -07:00
disk_guided_multi_postinstall.pm fix server_multi postinstall for disk being virtio 2016-01-27 01:44:20 -08:00
disk_guided_multi.pm add an iscsi test, and a support_server test to support it 2016-06-09 08:43:46 -07:00
disk_guided_shrink_postinstall.pm use assert_script_run when possible 2016-01-12 09:27:14 -08:00
disk_guided_shrink.pm add guided shrink test 2015-09-08 15:54:22 +02:00
firewall_configured_postinstall.pm add firewall kickstart tests (disabled and configured) 2016-03-23 13:52:00 -07:00
firewall_disabled_postinstall.pm add firewall kickstart tests (disabled and configured) 2016-03-23 13:52:00 -07:00
freeipa_client_postinstall.pm add FreeIPA web UI testing 2016-06-28 12:01:31 -07:00
freeipa_password_change_postinstall.pm add QA:Testcase_FreeIPA_password_change test 2016-08-03 13:21:12 -07:00
freeipa_webui_postinstall.pm add QA:Testcase_FreeIPA_password_change test 2016-08-03 13:21:12 -07:00
install_arm_image_deployment.pm add ARM initial-setup test 2016-05-18 14:04:45 +02:00
install_source_graphical.pm add NFS tests (and DHCP/DNS in the support server) 2016-06-13 08:42:30 -07:00
realmd_join_cockpit_postinstall.pm add FreeIPA web UI testing 2016-06-28 12:01:31 -07:00
realmd_join_sssd_postinstall.pm add a realmd_join_sssd test, and use DHCP for it and cockpit 2016-06-28 12:00:13 -07:00
role_deploy_domain_controller.pm add QA:Testcase_FreeIPA_password_change test 2016-08-03 13:21:12 -07:00
server_cockpit_basic_postinstall.pm add cockpit_default and cockpit_basic tests 2016-06-01 09:05:33 -07:00
server_cockpit_default_postinstall.pm add cockpit_default and cockpit_basic tests 2016-06-01 09:05:33 -07:00
server_firewall_default_postinstall.pm add a server default firewall test 2016-05-31 14:24:34 -07:00
uefi_postinstall.pm use assert_script_run when possible 2016-01-12 09:27:14 -08:00
upgrade_postinstall.pm add desktop_terminal test, refactor test loading a bit 2016-05-05 16:39:47 -07:00
upgrade_preinstall.pm add encrypted workstation upgrade tests (current and previous) 2016-07-08 08:56:57 -07:00
upgrade_run.pm add encrypted workstation upgrade tests (current and previous) 2016-07-08 08:56:57 -07:00