Project

General

Profile

action #46508

[qe-core][functional] Ensure to use a clean "extra" console for keymap_or_locale and / or do not try to login (at least on local backends)

Added by okurz over 2 years ago. Updated 11 months ago.

Status:
Workable
Priority:
Low
Assignee:
-
Category:
Bugs in existing tests
Target version:
SUSE QA - Milestone 32
Start date:
2019-01-22
Due date:
% Done:

0%

Estimated time:
42.00 h
Difficulty:


Related issues

Related to openQA Tests - action #46532: [functional][u] test fails in keymap_or_locale as the test fails to unlock the screenlock when it should not even care about the displaymanagerResolved2019-01-23

Related to openQA Tests - action #45395: [sle][functional][u] keyboard layout switching - check for keyboard layout in gdm+gnome on SLEResolved2018-12-192019-12-31

Related to openQA Tests - action #45404: [functional][y] keyboard layout switching - check for *changed* keyboard layout in console after first_bootResolved2018-12-192019-02-26

Related to openQA Tests - action #36126: [functional][u] post_fail_hook matches on "text_login_root" before actual tty switch and therefore never logs inResolved2018-05-14

History

#1 Updated by okurz over 2 years ago

Reverted the original change and retriggered all failed jobs I could find now.

Created new PR https://github.com/os-autoinst/os-autoinst-distri-opensuse/pull/6613

#2 Updated by okurz over 2 years ago

  • Status changed from In Progress to Workable
  • Assignee deleted (okurz)
  • Target version set to Milestone 24

ok, the validation within the PR was just triggered to show the actual problem: https://openqa.opensuse.org/tests/835514#step/keymap_or_locale/5 failing trying to login as extra but as discussed in [#opensuse-factory](irc://chat.freenode.net/opensuse-factory) :

[22/01/2019 20:04:32] <guillaume_g> okurz: btw, for the keymap test, I think I did not need new needle as it check for 'login' needle... I need to find out what happened. I will check tomorrow!
[22/01/2019 20:07:21] <okurz> guillaume_g: sure, I will handle the test failures for now, no rush now :)
[22/01/2019 20:13:30] <okurz> guillaume_g: see https://openqa.opensuse.org/tests/835514#step/keymap_or_locale/4, it's a test triggered on o3 from a not-yet-merged PR branch, how cool is that? :)
[22/01/2019 20:26:52] <guillaume_g> okurz: the test should not perform a login and just type the string...
[22/01/2019 20:29:25] <guillaume_g> okurz: maybe just an assert_screen on tty3 (with alt-f3) should be enough
[22/01/2019 20:30:11] <okurz> guillaume_g: remember the original problem that on the remote backends we do not have the notion of "tty3", we only have ssh terminals and such
[22/01/2019 20:31:02] <okurz> but I agree that the test should not login and maybe the same test is not useful at all to execute over a remote ssh. This is why I created a progress ticket to do it properly and think about it first. Please add your thoughts in the ticket as well. I am currently unable to grasp everything from just IRC chat log due to needing to handle the immediate failures :)
[22/01/2019 20:31:43] <guillaume_g> okurz: ok. Maybe just skip tty3 test on aarch64 for now. ;)
[22/01/2019 20:32:17] <okurz> no aarch64 should be fine because we have a local tty3 there
[22/01/2019 20:37:10] <guillaume_g> okurz: we have a tty3, but test fails because worker is a bit slow... ;)
[22/01/2019 20:38:40] <guillaume_g> https://openqa.opensuse.org/tests/831803#step/keymap_or_locale/3 shows we match a cleared console _before_ the switch to tty3 happen. So, we start to type too early.

#3 Updated by okurz over 2 years ago

  • Subject changed from [functional][u] Ensure to use a clean "extra" console for keymap_or_locale to [functional][y] Ensure to use a clean "extra" console for keymap_or_locale and / or do not try to login (at least on local backends)
  • Due date set to 2019-02-12
  • Category changed from Enhancement to existing tests to Bugs in existing tests
  • Status changed from Workable to In Progress
  • Assignee set to okurz
  • Priority changed from Normal to High
  • Target version changed from Milestone 24 to Milestone 22

For aarch64 the problem is visible in https://openqa.opensuse.org/tests/835515#step/keymap_or_locale/3 causing tests to fail. The test finds a "cleared_console", not the "login prompt" which it should so it starts to type but that is too early.

mloviska your commit

commit 08d0e63fd
Author: Martin Loviska <mloviska@suse.com>
Date:   Mon Mar 26 16:49:04 2018 +0200

    Add cleared-console tag for verify keymap textmode subroutine s390x-specific

diff --git a/tests/locale/keymap_or_locale.pm b/tests/locale/keymap_or_locale.pm
index d4b7cdbe8..93b2778cb 100644
--- a/tests/locale/keymap_or_locale.pm
+++ b/tests/locale/keymap_or_locale.pm
@@ -23,7 +23,7 @@ sub verify_default_keymap_textmode {
     }
     else {
         send_key('alt-f3');
-        assert_screen("linux-login");
+        assert_screen([qw(linux-login cleared-console)]);

added the tag "cleared-console" to the screens to check but unconditionally so failing aarch64. Probably we should just add these tag on remote backends, WDYT?

#5 Updated by okurz over 2 years ago

  • Related to action #46532: [functional][u] test fails in keymap_or_locale as the test fails to unlock the screenlock when it should not even care about the displaymanager added

#6 Updated by okurz over 2 years ago

  • Status changed from In Progress to Feedback

#7 Updated by okurz over 2 years ago

merged.

#8 Updated by okurz over 2 years ago

https://openqa.suse.de/tests/2401420#step/keymap_or_locale/2 fails now on svirt-hyperv because there is a tty which I did not expect for a "remote backend". It seems we are using a VNC connection provided by the hypervisor that allows access to the ttys same as for accessing any remote libvirt instance but not what we use for s390x-kvm.

-> https://github.com/os-autoinst/os-autoinst-distri-opensuse/pull/6642

merged, https://openqa.suse.de/tests/2405823 retriggered, passed https://openqa.suse.de/tests/2405823#step/keymap_or_locale/2 fine

Afterwards we can revisit the original idea of https://github.com/os-autoinst/os-autoinst-distri-opensuse/pull/6220 to use a "extra" console

#9 Updated by okurz over 2 years ago

  • Due date changed from 2019-02-12 to 2019-03-12
  • Status changed from Feedback to Workable
  • Assignee deleted (okurz)
  • Priority changed from High to Normal
  • Target version changed from Milestone 22 to Milestone 23

Not aware of further failures, back to "Workable" for the next step of a dedicated "extra" console

#10 Updated by okurz over 2 years ago

  • Blocks action #44180: [sle][functional][u] test fails in keymap_or_locale - because typing issue added

#11 Updated by okurz over 2 years ago

  • Related to action #45395: [sle][functional][u] keyboard layout switching - check for keyboard layout in gdm+gnome on SLE added

#12 Updated by okurz over 2 years ago

  • Related to action #45404: [functional][y] keyboard layout switching - check for *changed* keyboard layout in console after first_boot added

#13 Updated by riafarov over 2 years ago

How is that Y?

#14 Updated by okurz over 2 years ago

It is [y] since #46508#note-3 adressing a commit from mloviska. It's a close call. I do not have problems to put it into the backlog of [u] as well.

#15 Updated by okurz over 2 years ago

  • Status changed from Workable to Feedback
  • Assignee set to okurz

Merged https://github.com/os-autoinst/os-autoinst-distri-opensuse/pull/6884 to revert for now. We should keep https://github.com/os-autoinst/os-autoinst-distri-opensuse/pull/6884#discussion_r259826505 in mind, e.g. check that rollback to snapshot also still works, e.g. for vmware, etc.

#16 Updated by okurz over 2 years ago

  • Status changed from Feedback to Blocked
  • Assignee changed from okurz to mgriessmeier

@mgriesmeier please update after #46532 and check what are the next steps to be done. Thx.

#17 Updated by riafarov over 2 years ago

  • Due date changed from 2019-03-12 to 2019-04-09

#18 Updated by okurz over 2 years ago

  • Subject changed from [functional][y] Ensure to use a clean "extra" console for keymap_or_locale and / or do not try to login (at least on local backends) to [functional][u] Ensure to use a clean "extra" console for keymap_or_locale and / or do not try to login (at least on local backends)
  • Due date deleted (2019-04-09)
  • Status changed from Blocked to Workable
  • Assignee deleted (mgriessmeier)
  • Priority changed from Normal to Low
  • Target version changed from Milestone 23 to Milestone 25

blocker resolved.

Next steps:
Reapply https://github.com/os-autoinst/os-autoinst-distri-opensuse/pull/6220 and test properly what is missing, e.g. could be necessary or useful to prevent select_console from actually logging in into the "extra-console" and just use it as we currently use "tty3"

#19 Updated by mgriessmeier about 2 years ago

  • Target version changed from Milestone 25 to Milestone 27

#20 Updated by SLindoMansilla about 2 years ago

  • Blocks deleted (action #44180: [sle][functional][u] test fails in keymap_or_locale - because typing issue)

#21 Updated by SLindoMansilla about 2 years ago

Next steps:

  1. Figure out which tests uses tty3
  2. Fix it!
  3. Bring back the extra console.

Ask Santi

#22 Updated by SLindoMansilla about 2 years ago

  • Estimated time set to 42.00 h

#23 Updated by mgriessmeier about 2 years ago

  • Target version changed from Milestone 27 to Milestone 29

#24 Updated by okurz almost 2 years ago

  • Related to action #36126: [functional][u] post_fail_hook matches on "text_login_root" before actual tty switch and therefore never logs in added

#25 Updated by mgriessmeier over 1 year ago

  • Target version changed from Milestone 29 to Milestone 32

#26 Updated by tjyrinki_suse 11 months ago

  • Subject changed from [functional][u] Ensure to use a clean "extra" console for keymap_or_locale and / or do not try to login (at least on local backends) to [qe-core][functional] Ensure to use a clean "extra" console for keymap_or_locale and / or do not try to login (at least on local backends)

Also available in: Atom PDF