action #111710
Updated by osukup over 2 years ago
## Current state:
Now QEM uses in aggregate jobs pretty complicated system to add repositories under test to jobs itself:
*qem-bot* post jobs with `*_TEST_ISUES` variable.
In *osd* are defined media with templates in corresponding `*_TEST_TEMPLATE`
when is job started from this vars is calculated variable `MAINT_TEST_REPO` using `SCC_ADDONS`
used code for this transformation:
`main_common.pm` -> https://github.com/os-autoinst/os-autoinst-distri-opensuse/blob/master/lib/main_common.pm#L773-L789
SLE `main.pm` -> https://github.com/os-autoinst/os-autoinst-distri-opensuse/blob/master/products/sle/main.pm#L323-L373
### Cons:
* pretty complex settings for medium with high probability of error
* code used for this in os-autoinst-distri-opensuse is pretty complex
## Proposal:
modify *qem-bot* to post new vars (`*_TEST_REPO`) with corresponding repositories and the use simpler code to construct `MAINT_TEST_REPO` by simply joining this vars still using SCC_ADDONS to join correct products/modules
qem-bot has all needed info for generate this vars which removes one layer of possible human errors (still can be problem in qa-metadata, but it is simpler to spot and debug)
### Pro's:
* remove mess from media settings
* cleaner/simpler code in os-autoinst-distri-opensuse
### Cons:
* lights more complex code in qem-bot ( Aggregate class )
* longer command line presented by qem-bot for aggregates
## Acceptance criteria
**AC1**: implement needed changes in qem-bot
**AC2**: implement needed changes in os-autoinst-distri-opensuse
**AC3**: (optional) cleanup media definitions in OSD
## O3
Note: this changes only handling for OSD, O3 uses different `bot` so poo is not related ( but can be also implemented ? on O3 side)