Project

General

Profile

action #15844

Updated by okurz about 7 years ago

## User story 
 As a release manager of a product with many builds per day I want to have at least one build fully finished and tested so that late jobs are not skipped and I get a full picture of product quality 

 ## acceptance criteria 
 * **AC1:** 
  * Given a job group with only builds older than 1d (e.g. 2d) 
  * When two new builds are triggered consecutively in short time 
  * Then the first build is not obsoleted by the later one 
 * **AC2:** (regression test) 
  * Given a job group with a recent build from the same day 
  * When two new builds are triggered consecutively in short time 
  * Then the first build *is* obsoleted by the later one 

 ## tasks 

 I can already think of two ways how to do it: 

 1. From the sync and trigger side, on a new build: If there are no completed builds, i.e. with no skipped jobs, builds within the last 24h, call sync with `_NOOBSOLETEBUILD`. That's it. That should do no harm if there are builds within the last 24h that are completely finished anyway. 
 2. From an external script detect a build which is the most recent one after at least one day, mark it as important by build tagging and remove that comment later on again 

 okurz prefers 1. 

 *optional:* Follow the approach mentioned in #9760#note-8 which is: 
 * first check current implementation if changing the priority on currently scheduled jobs has an influence on the test suite or just the job 
 * do not obsolete old builds but instead on new iso: if jobs for old build are in state scheduled, set priority-10 
 * if priority of all scheduled jobs within one build are all equal 0, obsolete the build 

 


 ## further details 

 The current manual approach is that the QA reviewer of the day decides this and can mark one build as important. 

 The time of "24h" is open for discussion, it might be a different time, e.g. 12h, or a number of builds, or a combination of both. 

 That might be a feature request on openQA itself or maybe on the supporting workflows and the scripts we use for providing media to test. 

 Also see #9760#note-7 for notes about use of `_NOOBSOLETEBUILD`

Back