Project

General

Profile

Actions

coordination #15850

closed

coordination #103962: [saga][epic] Easy multi-machine handling: MM-tests as first-class citizens

[epic] Improve displaying job dependencies

Added by okurz almost 8 years ago. Updated over 2 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
Feature requests
Target version:
Start date:
2019-11-18
Due date:
% Done:

100%

Estimated time:
(Total: 0.00 h)

Description

Several aspects of displaying jobs and their dependencies can be improved. See the sub tasks for concrete ideas.


Files


Subtasks 5 (0 open5 closed)

action #59969: Display job dependency tab not only for latest jobs Resolvedmkittler2019-11-18

Actions
action #69976: Show dependency graph for cloned jobsResolvedmkittler2020-08-13

Actions
action #107311: The dependency tree of `openqa-clone-job --clone-children` is brokenResolvedmkittler2022-02-23

Actions
action #109809: Show job relations for parallel/children jobs also on the tests overview page /tests/overview (mainly for parallel jobs) size:MResolvedmkittler2022-04-11

Actions
action #110719: Fold ok clusters by default, unfold if there is any non-ok resultResolvedmkittler2022-05-06

Actions

Related issues 3 (0 open3 closed)

Related to openQA Project (public) - action #15846: [tools][dashboard]Show job relation on '/tests'ResolvedEDiGiacinto2017-01-10

Actions
Has duplicate openQA Project (public) - action #15088: Build overview should display dependency relations between jobsClosed2016-11-28

Actions
Has duplicate openQA Project (public) - action #52517: Sorting out tests: Visualize parallel job dependencies in test overview (was: Enhance the view for the multimachine tests)Rejectedokurz2019-06-03

Actions
Actions #1

Updated by coolo about 7 years ago

  • Target version set to Ready
Actions #2

Updated by coolo about 7 years ago

  • Has duplicate action #15088: Build overview should display dependency relations between jobs added
Actions #3

Updated by okurz over 5 years ago

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

Updated by okurz over 5 years ago

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

Updated by okurz over 5 years ago

  • File Screenshot_20190605_233019.png 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 :)
Actions #6

Updated by okurz about 5 years ago

  • Status changed from New to Workable
Actions #7

Updated by okurz over 4 years ago

  • Priority changed from Normal to Low
Actions #8

Updated by Xiaojing_liu over 4 years ago

  • Assignee set to Xiaojing_liu
Actions #9

Updated by livdywan over 4 years ago

  • Status changed from Workable to In Progress
Actions #10

Updated by okurz over 4 years ago

Idea for later: https://github.com/os-autoinst/openQA/pull/3287#issuecomment-665529245

In particular: "could we also work towards getting some better rendering of parallel tests please? So that all hpc_ALPHA_mpich_mpi_xxx tests, which are in fact '1 multi machine' test, could be easily seen as such? For instance the parent rendered with bold, or children rendered with italic or whatever is the easiest." That we can consider as an alternative to the collapsing I proposed.

Actions #11

Updated by Xiaojing_liu over 4 years ago

Like https://github.com/os-autoinst/openQA/pull/3287#issuecomment-665614031 said, the tests page has the hovering function, we should implement this feature in overview page.

new pr: https://github.com/os-autoinst/openQA/pull/3287

Actions #12

Updated by Xiaojing_liu over 4 years ago

https://github.com/os-autoinst/openQA/pull/3297
PR for adding highlight feature

Actions #13

Updated by Xiaojing_liu over 4 years ago

  • Status changed from In Progress to Feedback
  • Assignee deleted (Xiaojing_liu)

The pr for highlighting dependency jobs has been merged. I set the status to 'Feedback' because there is one thing I haven't implemented. See note #15850#note-10

Actions #14

Updated by okurz over 4 years ago

  • Description updated (diff)
  • Status changed from Feedback to Workable
  • Target version changed from Ready to future

IMHO we improved the UX but some ideas have been mentioned to improve further, e.g. collapsing multiple entries together, e.g. with the mentioned stack icon. Added a second AC accordingly. Leaving this ticket for the future to be followed up with.

Actions #15

Updated by okurz about 3 years ago

  • Tracker changed from action to coordination
  • Subject changed from Show job relations for parallel/children jobs also on the tests overview page /tests/overview (mainly for parallel jobs) to [epic] Show job relations for parallel/children jobs also on the tests overview page /tests/overview (mainly for parallel jobs)
Actions #16

Updated by okurz about 3 years ago

  • Parent task set to #103962
Actions #17

Updated by okurz almost 3 years ago

  • Status changed from Workable to Blocked
  • Assignee set to mkittler
  • Target version changed from future to Ready
Actions #18

Updated by okurz over 2 years ago

  • Status changed from Blocked to Workable

@mkittler you might have missed that you yourself helped to resolve subtasks :)

Actions #19

Updated by mkittler over 2 years ago

This ticket is now something between an epic and a concrete task because it actually states quite clear its own acceptance criteria and none of its sub tasks actually help with that specific criteria. Should I add a sub ticket for them? It would basically be a clone of this ticket so I suppose I'd have to change this ticket description to something more general. I'm wondering whether it makes sense to turn concrete actions into an epic like this. Wouldn't it be better to create a new epic ticket and add the concrete ticket as sub task (among other sub tasks)?

Actions #20

Updated by okurz over 2 years ago

Please keep this ticket as the epic and create a new subtask even if the description is nearly identical to the current ticket.

Actions #21

Updated by mkittler over 2 years ago

  • Subject changed from [epic] Show job relations for parallel/children jobs also on the tests overview page /tests/overview (mainly for parallel jobs) to [epic] Improve displaying job dependencies
  • Description updated (diff)
Actions #22

Updated by okurz over 2 years ago

  • Status changed from Workable to Blocked

Discussed during weekly 2022-05-06 and decided that we want to do just one more thing in #110719 and then call the epic resolved. I reviewed all the mentioned ideas and I guess it's ok like that :)

Actions #23

Updated by mkittler over 2 years ago

  • Status changed from Blocked to Resolved

Resolving because all sub tasks have been resolved. I hope these improvements should be good enough for now.

Actions

Also available in: Atom PDF