action #33745

Updated by mkittler over 3 years ago

When working on #9906 (Show added/updated needles in editor) general problems regarding how openQA handles the Git repository came up. This ticket is only meant to describe the general problems and might be used for further discussion.

## current way it works
1. There are two ways openQA can detect a *new* needle:
1. running a job which uses the needle
2. the needle is created in the needle editor (when is merged)
2. There is a Gru task which periodically checks whether needle files are still present. It doesn't *delete* any entries in the openQA database. Only the absence of files is tracked. This will also *not* detect any new needles.
3. When creating a needle via the needle editor, openQA commits that change to the Git repository. It When is merged, it also instantly creates a database entry for that needle.
4. When removing a needle via the web interface, openQA commits the deletion to the Git repository or just removes the file. The needle is also deleted from the internal database if the needle files could be removed successfully.

## problems
* The feature 'Show added/updated needles in editor' only works when the new needle has been created via the needle editor or at least one job loading it has been started.
* When restarting a job, newly created needles are not instantly available.
* In 3. and 4. conflicts can occur. In this case openQA will push to another branch. Needles could get lost in that case.