Project

General

Profile

action #9906

Show added/updated needles in editor

Added by okurz almost 6 years ago. Updated over 3 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
Feature requests
Target version:
Start date:
2015-12-14
Due date:
% Done:

0%

Estimated time:
Difficulty:

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 uiResolved2013-09-18

Related to openQA Project - action #33745: Improve handling external Git repositories (for needles)New2018-03-23

Related to openQA Project - action #33856: openQA needle editor causes internal server error at lib/OpenQA/WebAPI/Controller/Step.pmResolved2018-03-27

History

#1 Updated by okurz almost 6 years ago

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

#2 Updated by okurz almost 6 years ago

  • Description updated (diff)

#3 Updated by okurz almost 6 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 over 5 years ago

  • Assignee set to mkittler

#5 Updated by mkittler over 5 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 5 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 over 4 years ago

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

#8 Updated by RBrownSUSE over 4 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 over 4 years ago

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

#10 Updated by mkittler over 4 years ago

  • Assignee deleted (mkittler)

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

#11 Updated by coolo about 4 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 over 3 years ago

  • Target version changed from Ready to Current Sprint

#13 Updated by mkittler over 3 years ago

  • Assignee set to mkittler

#14 Updated by mkittler over 3 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 over 3 years ago

  • Status changed from New to In Progress

#16 Updated by okurz over 3 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 over 3 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 over 3 years ago

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

#19 Updated by mkittler over 3 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 over 3 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 over 3 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 over 3 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 over 3 years ago

  • Target version changed from Current Sprint to Done

Also available in: Atom PDF