action #9906

Show added/updated needles in editor

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

Status:ResolvedStart date:14/12/2015
Priority:NormalDue date:
Assignee:mkittler% Done:

0%

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

Description

user story

As a tester adding/updating needles in failing tests I want to see all potentially matching needles not to re-add needles when someone else already added them before the test was rerun

acceptance criteria

  • adding (saving) a needle in the needle editor updates the web interface to show the added needle, too

implementation ideas

  • either update the test results with the needle candidate to also show the new needle(s) or additionally to the needle candidates of the failed test also show new ones

Related issues

Related to openQA Project - action #820: offer all needles in web ui Resolved 18/09/2013
Related to openQA Project - action #33745: Improve handling external Git repositories (for needles) New 23/03/2018
Related to openQA Project - action #33856: openQA needle editor causes internal server error at lib/... Resolved 27/03/2018

History

#1 Updated by okurz over 4 years ago

  • Related to action #820: offer all needles in web ui added

#2 Updated by okurz over 4 years ago

  • Description updated (diff)

#3 Updated by okurz over 4 years ago

  • Subject changed from As a tester adding/updating needles in failing tests I want to see all potentially matching needles not to re-add needles when someone else already added them before the test was rerun to Show added/updated needles in editor
  • Description updated (diff)

#4 Updated by okurz almost 4 years ago

  • Assignee set to mkittler

#5 Updated by mkittler over 3 years ago

  • Status changed from New to Feedback

As far as I see it, OpenQA currently just commits the new/updated needles to a Git repository. This repo is then read by os-autoinst (when restarting the job) which notifies OpenQA about the new/updated needles. That means that some of the code which does this task is part of os-autoinst.

I'm not sure how to proceed, but see the following options:
- Add a way to let os-autoinst just read new needles (without restarting). This would be triggered by OpenQA after adding/updating a needle.
- Implement adding/updating needles also in OpenQA.

#6 Updated by coolo over 3 years ago

you can't really do that - no matter how you do it, the needles don't make sense out of the context that main.pm sets.

But what you can do is doing analysis based on the tags used. Show the needles created since the failure as information - and filter it by the tags used in the details.

#7 Updated by RBrownSUSE about 3 years ago

  • Subject changed from Show added/updated needles in editor to [tools]Show added/updated needles in editor

#8 Updated by RBrownSUSE about 3 years ago

  • Subject changed from [tools]Show added/updated needles in editor to [tools][dashboard]Show added/updated needles in editor

#9 Updated by okurz almost 3 years ago

@mkittler: please update. Can you work on this? If not, unassign.

#10 Updated by mkittler almost 3 years ago

  • Assignee deleted (mkittler)

Not sure how to implement this right now so I'll unassign.

#11 Updated by coolo over 2 years ago

  • Subject changed from [tools][dashboard]Show added/updated needles in editor to Show added/updated needles in editor
  • Status changed from Feedback to New
  • Target version set to Ready

So let's get concrete: what we need:

  • the webui stores needle names and the tags used in them whenever it saves a needle
  • the webui checks on needle failure the timestamp of the job start and the mismatched tags against given table and warns the user that the needle match is outdated

That's as good as it gets IMO.

#12 Updated by coolo about 2 years ago

  • Target version changed from Ready to Current Sprint

#13 Updated by mkittler about 2 years ago

  • Assignee set to mkittler

#14 Updated by mkittler about 2 years ago

@coolo Not sure whether I understand your 'get concrete' points exactly. My ideas so far I understand:

When the webui commits a needle, it should also store the needle's tags and the date of the last update internally.

This could be done by extending the database table for needles. It would be two new columns:

  • Tags: A comma-separated list is likely good enough for this (instead of having an extra table for the tags).
  • Last update: eg. via the usual __PACKAGE__->add_timestamps;

When opening the needle editor, the webui can then check whether a new needle with the same tags has already been created since the job has been started. In this case it shows a warning pointing to the already created needle.

#15 Updated by mkittler about 2 years ago

  • Status changed from New to In Progress

#16 Updated by okurz about 2 years ago

I reviewed this ticket now after talking to you today: I think all needles that are relevant need to show up as candidates in the needle editor and be available to look at as well. Just mentioning them by name will not help much because a user of the needle editor will need to see the needle images at least.

#17 Updated by mkittler about 2 years ago

Ok - the mentioned WIP PR already covers showing the needles in the 'Needle based on' selection. I've just tested it and it works.

So far it will list any needle which has been created since the job was started and contains at least one relevant tag.

I'm wondering whether the check for failure is actually necessary. Why not showing new needles always, also when opening the needle editor from a match? It would be more consistent.

#18 Updated by mkittler about 2 years ago

  • Related to action #33745: Improve handling external Git repositories (for needles) added

#19 Updated by mkittler about 2 years ago

  • Status changed from In Progress to Feedback

The PR has been merged. Let's see whether it works in production.

#20 Updated by szarate about 2 years ago

  • Related to action #33856: openQA needle editor causes internal server error at lib/OpenQA/WebAPI/Controller/Step.pm added

#21 Updated by mkittler about 2 years ago

  • Status changed from Feedback to In Progress

This broke the 'take image from' selection.

PR with fix: https://github.com/os-autoinst/openQA/pull/1616

#22 Updated by mkittler about 2 years ago

  • Status changed from In Progress to Resolved

Seems to work on osd (including fix for 'take image from' selection): https://openqa.suse.de/tests/1563503/modules/grub_test/steps/1/edit

#23 Updated by szarate almost 2 years ago

  • Target version changed from Current Sprint to Done

Also available in: Atom PDF