action #97112
closedcoordination #58184: [saga][epic][use case] full version control awareness within openQA
coordination #94750: [epic] Support needles from git-cloned or separate repo if casedir points to a git-repo
Support relative needle directories together with tests checked out from git
Description
Motivation¶
See the unexpected current default behaviour in #94735
Acceptance criteria¶
- AC1: For tests with CASEDIR pointing to a git repo including tests+needles by default needles from that repo should be used and not a non-git default repo
Suggestions¶
-
To understand how the current behaviour is it is suggested to trigger tests with CASEDIR=https://github.com/os-autoinst/os-autoinst-distri-example because the example distribution includes needles in the same repo
-
Discussed with mkittler and livdywan. We propose to shift more logic into os-autoinst and implement an additional keyword so that os-autoinst looks up only a fallback needles repo in case needles are not found anywhere else. Also we assume that os-autoinst is easier to change and maintain. The current proposal is to use
NEEDLES_DIR=[<keyword>]<dir>
, e.g.NEEDLES_DIR=[fallback]my/productdir/needles
for a relative fallback directory. The only suggested to be supported keyword should be "fallback" for now. -
In os-autoinst parse keyword from
NEEDLES_DIR
-
If "[fallback]" then try to find needles in all default paths, e.g. subdir of casedir, productdir, etc., only if not found look up in the fallback one
-
Prepare setting fallback in openQA Worker/Engines/isotovideo.pm but do not merge yet
-
Deploy new feature in os-autoinst
-
Wait grace period
-
Deploy openQA feature