action #46589
open[qe-core][functional] Create separate git project for common GNU/Linux functionality
0%
Description
Motivation¶
At the moment we are maintaining a subfolder /lib in https://github.com/os-autoinst/os-autoinst-distri-opensuse/tree/master/lib. We are reusing it for every product/project inside (Tumbleweed, Leap, Kubic, CaaSP, SLE, etc.)
We have a separate git project to test openQA in openQA which would benefit or reusing those libraries -> https://github.com/os-autoinst/os-autoinst-distri-openQA
There are third parties that at the moment need to download the whole os-autoinst-distri-opensuse to reuse those libraries for their projects.
Further information¶
Open to discussion. Please, add you ideas in comments below.
Updated by SLindoMansilla almost 6 years ago
Some proposals:
- Creating a project os-autoinst-utils-opensuse that contains all the common functionality (for example, everything within /lib)
- Creating a project os-autoinst-utils-gnulinux that contains all the common functionality, but in a more general way so it can be reused by any GNU/Linux distribution
- Having those modules as git sub modules of os-autoinst-distri-opensuse.
Updated by mkravec almost 6 years ago
Bad idea from my POV. This will means 3 PRs (tests/needles/lib).
With this reasoning we can also separate /data subfolder when someone need only those files.
Would make it easier for single person and harder for everybody else.
Why is openqa-in-openqa separate git project, not just separate test scenario (in os-autoinst-distri-opensuse)?
Updated by okurz almost 6 years ago
mkravec wrote:
Why is openqa-in-openqa separate git project, not just separate test scenario (in os-autoinst-distri-opensuse)?
Well, one reason is so that it exactly motivates this ticket, actually :) There are more test distributions which we are hardly or not aware of, e.g. https://pagure.io/fedora-qa/os-autoinst-distri-fedora , and it would be great if we can share more with them as well. So merging os-autoinst-distri-openQA into os-autoinst-distri-opensuse is one option but it will not solve the overall, more general change.
Updated by rpalethorpe almost 6 years ago
Just vendor (copy and paste) the libs you want. In a project this size and complexity you generally want to avoid creating dependencies because it is more work to maintain them and play nice with others than to reimplement the specific features we need.
If you want to be nice to third parties, then sure, fork our test code and turn it into a lib or a linux distri template. If third parties add useful stuff to it then we can cherry pick it back into our distri.
Updated by mgriessmeier over 5 years ago
- Target version changed from Milestone 26 to Milestone 30+
to be revisited later
Updated by mgriessmeier almost 5 years ago
- Target version changed from Milestone 30+ to Milestone 33
Updated by tjyrinki_suse about 4 years ago
- Subject changed from [functional][u] Create separate git project for common GNU/Linux functionality to [qe-core][functional] Create separate git project for common GNU/Linux functionality
Updated by okurz almost 3 years ago
- Related to coordination #106922: [epic][sporadic] openqa_from_git fails in dashboard due to ensure_unlocked_desktop not expecting password entry screen in case of locked desktop auto_review:"match=desktop-runner,screenlock timed out.*":retry added