Project

General

Profile

action #13742

meta job groups and nested groups

Added by okurz about 5 years ago. Updated about 5 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
-
Target version:
-
Start date:
2016-09-15
Due date:
% Done:

0%

Estimated time:
Difficulty:

Description

User story

As a release manager or project manager I want to have a job group overview page showing the results from selected, individual job groups to have an overview over just the products I care about

Related use cases: UC1 and UC5

acceptance criteria

  • AC1: openQA has a web page view showing a custom grouping of existing job groups

ideas

Multiple implementation ideas exist. Either we provide "nested job groups", e.g. a job group can have a parent/children. A more flexible approach is probably to have meta job groups that know about other job groups they should include. In contrast to nested job groups this allows a sub job group to be shown as part of more meta job groups. A third idea is to use what the index page already does and filter down on the default view to show only what one is interested in.

tasks

  • DONE: Add filter query parameter for index page -> gh#886
  • DONE: Add UI element to filter on index page
  • Provide quicklinks to "common views" with corresponding filter query parameters

OR

  • Provide template for meta/nested job groups
  • DONE: Extend database to accomodate meta/nested job groups, e.g. job group relations
  • DONE: Add API route and display of meta/nested job groups
  • DONE: Implement editor for meta/nested job groups
  • DONE: Provide an overview page for meta/parent groups
  • DONE: Show meta/parent groups on index page (further tasks regarding this)

in both cases continue here:

  • DONE: Group together build results (the progress bars) for job groups having the same builds, e.g. "Acceptance: SLE 12 SP2 1. Server" and "Acceptance: SLE 12 SP2 4. Migration" as in #13742#2-implementation-step

further details

the web page could look like this

1. implementation step

Acceptance: SLE 12 SP2

  • Acceptance: SLE 12 SP2 1. Server

    • Build2118 (80 passed / 20 failed)
    • Build2117
  • Acceptance: SLE 12 SP2 2. Desktop

    • Build098
    • Build097
  • Acceptance: SLE 12 SP2 4. Migration

    • Build2118 (8 passed / 2 failed)
    • Build2117

2. implementation step

Acceptance: SLE 12 SP2

  • Acceptance: SLE 12 SP2 1. Server / SLE 12 SP2 4. Migration

    • Build2118 (88 passed / 22 failed)
    • Build2117
  • Acceptance: SLE 12 SP2 2. Desktop

    • Build098
    • Build097

3. implementation step

Acceptance: SLE 12 SP2

more information here, at least the pinned-description must work

  • Acceptance: SLE 12 SP2 1. Server / SLE 12 SP2 4. Migration

    • Build2118 (88 passed / 22 failed)
    • Build2117
  • Acceptance: SLE 12 SP2 2. Desktop

    • Build098
    • Build097

-> side-note: don't include comments from sub-jobgroups, but labels


Related issues

Related to openQA Project - action #14814: Implement tests for parents on index pageResolved2016-11-15

History

#2 Updated by okurz about 5 years ago

  • Description updated (diff)

#3 Updated by okurz about 5 years ago

  • Description updated (diff)
  • Status changed from New to In Progress
  • Assignee set to mkittler

https://github.com/os-autoinst/openQA/pull/879 and https://github.com/os-autoinst/openQA/pull/886 merged, adds query parameter "group" to index page to filter job groups, e.g. https://openqa.opensuse.org/?group=Argon&group=Krypton shows "openSUSE Argon" and "openSUSE Krypton"

#4 Updated by mkittler about 5 years ago

Here's a screen shot of how it looks like so far:
combined_build_results

#5 Updated by mkittler about 5 years ago

  • Description updated (diff)

#6 Updated by okurz about 5 years ago

these error messages I see on o3:

[Sat Nov  5 10:53:20 2016] [31104:error] Global symbol "$parent_index" requires explicit package name at template admin/group/parent_group_row.html.ep line 1.
Global symbol "$groups" requires explicit package name at template admin/group/parent_group_row.html.ep line 30.
1: <li id="parent_group_<%= $group ? $group->id : 'none' %>" data-initial-index="<%= $parent_index %>">
2:     <div
3:     % if (is_admin) {
4:         ondrop="insertParentGroup(event, this);" ondragover="checkParentDrop(event, this);"
5:         ondragleave="leaveDrag(event, this);" draggable="true" ondragstart="dragParentGroup(event, this);"
6:     % }

[Sat Nov  5 10:55:02 2016] [31105:error] Global symbol "$parent_index" requires explicit package name at template admin/group/parent_group_row.html.ep line 1.
Global symbol "$groups" requires explicit package name at template admin/group/parent_group_row.html.ep line 30.
1: <li id="parent_group_<%= $group ? $group->id : 'none' %>" data-initial-index="<%= $parent_index %>">
2:     <div
3:     % if (is_admin) {
4:         ondrop="insertParentGroup(event, this);" ondragover="checkParentDrop(event, this);"
5:         ondragleave="leaveDrag(event, this);" draggable="true" ondragstart="dragParentGroup(event, this);"
6:     % }

[Sat Nov  5 10:57:41 2016] [31101:error] Global symbol "$parent_index" requires explicit package name at template admin/group/parent_group_row.html.ep line 1.
Global symbol "$groups" requires explicit package name at template admin/group/parent_group_row.html.ep line 30.
1: <li id="parent_group_<%= $group ? $group->id : 'none' %>" data-initial-index="<%= $parent_index %>">
2:     <div
3:     % if (is_admin) {
4:         ondrop="insertParentGroup(event, this);" ondragover="checkParentDrop(event, this);"
5:         ondragleave="leaveDrag(event, this);" draggable="true" ondragstart="dragParentGroup(event, this);"
6:     % }

#7 Updated by mkittler about 5 years ago

I'm currently following the 'parent group' approach. This is how the parent group currently looks like:

parent group overview

#8 Updated by mkittler about 5 years ago

  • Description updated (diff)

#9 Updated by mkittler about 5 years ago

  • Related to action #14814: Implement tests for parents on index page added

#10 Updated by mkittler about 5 years ago

  • Status changed from In Progress to Resolved

Working in production so I would say this is done now. Not sure what we meant with 'Provide template for meta/nested job groups', but I guess it is not important anymore.

Specific issues regarding this can be tracked in extra tickets, eg. https://progress.opensuse.org/issues/14814

Also available in: Atom PDF