-
Notifications
You must be signed in to change notification settings - Fork 122
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
reproduce Testing Farm's package installation #1075
Comments
@TomasTomecek FYI, what we discussed on IRC. |
@martinpitt yes, this is coming, @psss can point you to some tickets. We will unify how the artifacts are installed, |
@martinpitt for the particular run you have, it is now this: |
@thrix ! Glad to hear! I see, so currently there are some Ansible scripts which set up the VM, install the packages, and call tmt. Cheers! |
yes, they are here:
This is not done by Ansible, we have Python code doing that. All these pieces will move under |
Turns out that tmt can already do that. I just managed to reproduce a packit/COPR TF run from martinpitt/python-dbusmock#160 with
With the improved "show me all logs" UI, all this information can at least be pieced together without having to manually type URLs "that one needs to know" 😁 #1018 is the same thing, thus I am closing my issue as a duplicate. Indeed let's fix the tmt reproducer steps, but no need to track this in two places. |
I've been debugging a weird failure in cockpit-project/cockpit-machines#601. Long story short, it was because the packit/TF run ended up with the distro package version cockpit-machines-264-1, instead of the PR's COPR build (262.5.gblablabla). Yes, the distro version is newer -- long story, not important here.
The main issue is that it is totally not obvious how to install the tested package (locally built RPM or the automatically created COPR build) with tmt. The TF log makes it very obvious that TF spawns the machine, then has completely custom code to install the RPM from copr, and only then invokes
tmt
on that machine (supposedly with theprovision --how connect
?).I find it rather hard to explain it to someone else how to reproduce a PR test failure locally with
tmt run provision --how virtual
. One has to jump through several hoops, liketmt run --until prepare
, then figure out how to ssh in (tmt run login -l
seems to destroy state, so one has to fish for the run-specificssh
command and the identity key), download/install the rpm, and then continue with--until report -l
, then investigate the failure, and finally clean up withtmt run --since report -l
.I would like some way how to inject the package installation (or at least installing the copr repo) into the
tmt
command line, and Testing Farm to use that instead of its custom code. So that the whole run becomes reproducible locally, and the package installation becomes part of the tmt test log.I don't particularly care about the "how" -- this could be something tailored such as
--install-rpm
, or something generic like running a shell script hook in betweenprepare
andexecute
.The text was updated successfully, but these errors were encountered: