Skip to content

reproduce Testing Farm's package installation #1075

@martinpitt

Description

@martinpitt

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 the provision --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, like tmt 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-specific ssh command and the identity key), download/install the rpm, and then continue with --until report -l, then investigate the failure, and finally clean up with tmt 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 between prepare and execute.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions