Project

General

Profile

Actions

action #120735

closed

coordination #68794: [qe-core][functional][epic] rework postfail hooks

[qe-core] PoC: Decrease typing on `post_fail_hooks` log collection

Added by szarate about 2 years ago. Updated over 1 year ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
Refactor/Code Improvements
Start date:
2022-11-18
Due date:
% Done:

0%

Estimated time:
Difficulty:
Sprint:
QE-Core: March Sprint (Mar 08 - Apr 05)

Description

Right now we have several routines that are doing a lot of typing, and a lot of it could be executed in a single script, (if what has to be typed is longer than 80 characters, os-autoinst will upload one script instead, and execute that), however we could benefit from running scripts directly to collect all the information in a single go, per log level.

While we're at it, we can extract the export_logs_* to Utils::Logging:: or a better namespace, so we can shed some lines from opensusebasetest

  • lib/opensusebasetest.pm:471:sub export_logs_basic {
  • lib/opensusebasetest.pm:504:sub export_logs {
  • lib/opensusebasetest.pm:539:sub export_logs_locale {
  • lib/opensusebasetest.pm:596:sub export_logs_desktop {

Once this is done, we should shave some minutes of typing (see parent ticket) which can be up to 30m

Suggestions

  • Take note on how long do we expend on collecting logs for a single test that fails across different architectures
  • Prepare a proposal with the changes and discuss them with the team

Acceptance Criteria

  1. AC1: Proposal has been created (doesn't need to be merged)
  2. AC2: export_logs* has been extracted to its own module

Related issues 2 (2 open0 closed)

Copied from openQA Tests (public) - action #120720: [qe-core] Use Utils::Logging::save_ulog to redefine upload_logs in opensusebasetestNew2022-11-18

Actions
Copied to openQA Tests (public) - action #120882: [qe-core] ensure `os-autoinst` reports properly the execution time of `post_fail_hooks`Blocked2023-01-19

Actions
Actions #1

Updated by szarate about 2 years ago

  • Copied from action #120720: [qe-core] Use Utils::Logging::save_ulog to redefine upload_logs in opensusebasetest added
Actions #2

Updated by szarate about 2 years ago

  • Status changed from New to Workable
Actions #3

Updated by szarate about 2 years ago

  • Copied to action #120882: [qe-core] ensure `os-autoinst` reports properly the execution time of `post_fail_hooks` added
Actions #4

Updated by pdostal about 2 years ago

  • Status changed from Workable to In Progress
  • Assignee set to pdostal
Actions #5

Updated by szarate about 2 years ago

  • Sprint changed from QE-Core: November Sprint (Nov 09 - Dec 07) to QE-Core: December Sprint (Dec 07 - Jan 04)
Actions #8

Updated by dimstar about 2 years ago

pdostal wrote:

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

That has intorduced an interesting regression, as seen for example on https://openqa.opensuse.org/tests/2968643#step/kate/4
historically, 'kate' has been a stable test, no change in the snapshot to make believe it should fail today. Firefox, that fails before it, is 'known' (in the KDE live setup)

It seems that after firefox, we go 'serial' for the post_fail_hook (as introduced here) - then reload LASTGOOD snapshot, at which state we lose the information on how the serial state is. The next few tests all run on X11 console (but never explicitly switch to it - is the system even aware it is on X11 now or is VNC interaction already an accident?); kate then does ensure_installed, which tries to interact with the serial console, at which point things explode

Actions #9

Updated by szarate almost 2 years ago

Santiago to ping pavel

Actions #10

Updated by szarate almost 2 years ago

  • Sprint changed from QE-Core: December Sprint (Dec 07 - Jan 11) to QE-Core: January Sprint (Jan 11 - Feb 08)
Actions #11

Updated by szarate almost 2 years ago

  • Sprint changed from QE-Core: January Sprint (Jan 11 - Feb 08) to QE-Core: February Sprint (Feb 08 - Mar 08)
Actions #12

Updated by szarate almost 2 years ago

  • Status changed from In Progress to Workable
  • Assignee deleted (pdostal)

Next person to pick the ticket, might want to ping Pavel

Actions #13

Updated by pdostal almost 2 years ago

I see two remaining issues now:

1) The subroutines were moved to Utils::Logging but there are still duplications.

2) The serial terminal console handling in post_fail_hook is still broken.
But some work from my last pull request might be reused.

Actions #14

Updated by dvenkatachala almost 2 years ago

  • Assignee set to dvenkatachala
Actions #15

Updated by dvenkatachala almost 2 years ago

  • Status changed from Workable to In Progress
Actions #16

Updated by dvenkatachala almost 2 years ago

Draft PR is created: https://github.com/os-autoinst/os-autoinst-distri-opensuse/pull/16364 and still doing VRs.

Now, the next step is to schedule tests, with each test having a different console.

Actions #18

Updated by szarate over 1 year ago

  • Sprint changed from QE-Core: February Sprint (Feb 08 - Mar 08) to QE-Core: March Sprint (Mar 08 - Apr 05)
  • Tags changed from qe-core-november-sprint to qe-core-november-sprint, qe-core-march-sprint, qe-core-april-sprint
Actions #19

Updated by dvenkatachala over 1 year ago

The PR https://github.com/os-autoinst/os-autoinst-distri-opensuse/pull/16364 has been merged and I haven't seen any complaints, so I will close the ticket.

Actions #20

Updated by dvenkatachala over 1 year ago

  • Status changed from In Progress to Resolved
Actions

Also available in: Atom PDF