action #107923

Updated by mkittler over 1 year ago

## Motivation 
 See the proposal in the parent epic #95479, e.g. about the specific format of an openQA label that is readable by qem-bot 

 ## Acceptance criteria 
 * **AC1:** A not-ok openQA job with a comment following format is not blocking approval of incident updates 
 * **AC2:** A not-ok openQA job with such comment is still blocking approval of all other, not specified incident updates 
 * **AC3:** A not-ok openQA without such comment is still blocking all related incidents 

 ## Suggestions 
 * *DONE:* Add a testing framework to, e.g. based on -> #109641 
 * *DONE:* Add a simple automatic test exercising one of the existing happy path workflows of qem-bot -> #110167 
 * *DONE:* Add automatic tests for the above acceptance criteria 
 * *DONE:* As a first quick-and-dirty, and messy approach read out openQA comments directly within the approval step of qem-bot (only for the failed jobs which should not take too long) 
 * *DONE:* Parse the mentioned special label string and for the parsed incident remove the according not-ok openQA job from the list of blocking results 
 * Optional: Add openQA comment parsing over the openQA API together with consistent data in qem-dashboard, i.e. 
    * As qem-dashboard is the "database for qem-bot" read out the according data from openQA that is pushed to qem-dashboard 
    * make qem-dashboard store the related data 
    * and then qem-bot should read it out from there 

 ## Out of scope 
 Visualize such specially handled failed openQA jobs in dashboard