Project

General

Profile

Actions

action #56789

open

coordination #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

New needles from git repository not working with openqa-clone-custom-git-refspec

Added by tjyrinki_suse over 4 years ago. Updated over 2 years ago.

Status:
New
Priority:
Low
Assignee:
-
Category:
Feature requests
Target version:
Start date:
2019-09-11
Due date:
% Done:

0%

Estimated time:

Description

Use case:

To be able to test tests in production (openqa.opensuse.org or openqa.suse.de) before merging the needles and tests themselves, since results have proven to vary on those loaded machines compared to local openQA instance or VM.

It is currently working if there are no new needles involved, but this issue describes the problem with custom needles which would be theoretically supported by openqa-clone-custom-git-refspec but not working in practice.

Problem description:

First of all, documentation [1] says "Path to needles subdirectory to use, defaults to "needles" within PRODUCTDIR. Can be a git repository URL, comparable to CASEDIR", and CASEDIR states "for example git@github.com:os-autoinst/os-autoinst-distri-opensuse.git#feature/test".

[1] https://github.com/os-autoinst/os-autoinst/blob/master/doc/backend_vars.asciidoc

However,

openqa-clone-custom-git-refspec https://github.com/os-autoinst/os-autoinst-distri-opensuse/pull/8332 https://openqa.opensuse.org/tests/xxxxxxxx --apikey=XXX --apisecret=XXX NEEDLES_DIR=git@github.com:tjyrinki/os-autoinst-needles-opensuse.git#poo-12345

results in:

Could not create directory '/var/lib/empty/.ssh'.
Host key verification failed.
fatal: Could not read from remote repository.    

Using https instead (NEEDLES_DIR=https://github.com/tjyrinki/os-autoinst-needles-opensuse.git) gets one further, but openQA complains about wrong needles location:

init needles from /var/lib/openqa/pool/15/os-autoinst-needles-opensuse
Needle /var/lib/openqa/pool/15/os-autoinst-needles-opensuse/ssh-login-ok-20160813.json is not under project directory /var/lib/openqa/cache/xxx at /usr/lib/os-autoinst/needle.pm line 63.

Oliver Kurz suggested playing around with the PRODUCTDIR to try to workaround the forbidding use of (correctly checked out) needles dir which I did but it didn't get any better with trying to set that to eg pool/... directories, which also changes on every run.


Related issues 8 (1 open7 closed)

Related to openQA Infrastructure - action #57962: Needle load time increaseResolvedokurz2019-10-10

Actions
Related to openQA Project - action #58289: Huge amount of "Needle file .* not found where expected. Check /var/lib/openqa for distri symlinks" on o3 in /var/log/openqaResolvedokurz2019-10-17

Actions
Related to openQA Project - action #54965: Cannot inspect the source code of the tests from my forkResolvedokurz2019-08-01

Actions
Related to openQA Tests - action #58574: [openqa] test fails in dashboard, desktop runner shows up a little bit lateResolvedokurz2019-10-23

Actions
Related to openQA Project - action #59184: Research about testing with a custom git refResolvedtinita2019-11-07

Actions
Related to openQA Project - action #70333: providing a git branch for NEEDLES_DIR does not appear to work on o3Resolvedmkittler2020-08-20

Actions
Related to openQA Project - action #91905: webui fails to display needles when using a git repository as CASEDIRNew2021-04-28

Actions
Copied to openQA Project - action #59330: "needledir not found: .*null/": openqa-clone-custom-git-refspec fails setting NEEDLES_DIR=null with new os-autoinst or openQAResolvedokurz2019-11-12

Actions
Actions

Also available in: Atom PDF