action #15850

Show job relations for parallel/children jobs also on the tests overview page /tests/overview (mainly for parallel jobs)

Added by okurz about 3 years ago. Updated 3 months ago.

Status:WorkableStart date:10/01/2017
Priority:NormalDue date:
Assignee:-% Done:

0%

Category:Feature requests
Target version:Ready
Difficulty:
Duration:

Description

User story

As a reviewer of jobs with relations on '/tests/overview' I want the job relations to show up so that I save time finding out inter-dependant job results

acceptance criteria

  • AC1: the job relations are visible on '/tests/overview'

tasks

  • research how job relations are shown for '/tests'
  • implement the icons in a similar way for '/tests/overview'
  • optional: Fold inter-dependant job results into a stack
  • optional: Unfold on click
  • optional: Make the job relation lookup and display configurable

further details

Original motivation came from asmorodskyi and rbrown discussing with me about multi machine tests which tend to use a lot of space on a overview page when most often one is at first interested in the overall result. So the idea was that these job result bubbles could be bundled or folded.

#15846 is related.

Screenshot_20190605_233019.png (3.63 KB) okurz, 17/06/2019 10:57 am

8099

Related issues

Related to openQA Project - action #15846: [tools][dashboard]Show job relation on '/tests' Resolved 10/01/2017
Duplicated by openQA Project - action #15088: Build overview should display dependency relations betwee... Closed 28/11/2016
Duplicated by openQA Project - action #52517: Sorting out tests: Visualize parallel job dependencies in... Rejected 03/06/2019

History

#1 Updated by coolo over 2 years ago

  • Target version set to Ready

#2 Updated by coolo over 2 years ago

  • Duplicated by action #15088: Build overview should display dependency relations between jobs added

#3 Updated by okurz 8 months ago

  • Duplicated by action #52517: Sorting out tests: Visualize parallel job dependencies in test overview (was: Enhance the view for the multimachine tests) added

#4 Updated by okurz 8 months ago

  • Related to action #15846: [tools][dashboard]Show job relation on '/tests' added

#5 Updated by okurz 8 months ago

  • File Screenshot_20190605_233019.png added
  • Subject changed from Show job relations for parallel/children jobs also on /tests/overview to Show job relations for parallel/children jobs also on the tests overview page /tests/overview (mainly for parallel jobs)
  • Category changed from 124 to Feature requests

Incorporated content from #52517 for implementation suggestions (see there for more details):

The circle icons for multiple parallel jobs could be collapsed into a single blob, e.g. with

 <span class="fa-clone"></span>

from https://fontawesome.com/icons/clone?style=solid

which can look like Screenshot_20190605_233019.png

@sebchlad already identified the right location in code which could be adjusted, e.g.
https://github.com/os-autoinst/openQA/blob/master/lib/OpenQA/WebAPI/Controller/Test.pm#L567
where we could go over the result hash and combine all parallel test results into a stack.

  • Clicking on the icon could open a popup with the individual results to go there. Alternative: In the most simple case just open the result from the first of the parallel job, e.g. jump immediately to the "Dependencies" tab.
  • For labels: Combine them all, e.g. for two parallel jobs with one label each show the stack icon and two flash / bug icons next to it.
  • The retry button can link to the first job as AFAIK the parallel jobs are started with it anyway already – or should be ;)
  • Optional: On hovering over the icon show a list of test results of all stacked tests in a popover (don't overdo graphing, clickable, to be able to click into all icons, failed modules, bug icon, etc.)
  • Result / color to show when they differ within the stack: Most likely user expectation on the result color is "worst", so combine with a precedence: incomplete beats fail beats cancel beats softfail beats passed
  • For display of test name(s): Make it explicit and rather show a custom string from a test variable in any of the stack's job with fallback to all names with ellipsis.
  • Having a cluster name for creating subgroups might actually be sensible as well - so cluster parallel jobs automatically (with autopicking a name if not present) and other jobs if they have the same cluster name. If parallel jobs have multiple cluster names, we'll explode and call shutdown. This cluster name might actually be an excellent choice for a job group template parameter - and so the circle closes :)

#6 Updated by okurz 3 months ago

  • Status changed from New to Workable

Also available in: Atom PDF