coordination #103962: [saga][epic] Easy multi-machine handling: MM-tests as first-class citizens
[epic] Improve displaying job dependencies
Several aspects of displaying jobs and their dependencies can be improved. See the sub tasks for concrete ideas.
#5 Updated by okurz over 3 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
which can look like
sebchlad already identified the right location in code which could be adjusted, e.g.
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 :)
#10 Updated by okurz over 2 years ago
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.
#11 Updated by Xiaojing_liu over 2 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.
#14 Updated by okurz about 2 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.
- 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)
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)?